瀏覽代碼

Merge pull request #2218 from sdodson/image-stream-sync

xPaaS v1.3.2 release
Scott Dodson 9 年之前
父節點
當前提交
c70525677e
共有 100 個文件被更改,包括 4510 次插入852 次删除
  1. 1 1
      roles/openshift_examples/examples-sync.sh
  2. 29 6
      roles/openshift_examples/files/examples/v1.2/xpaas-streams/jboss-image-streams.json
  3. 10 0
      roles/openshift_examples/files/examples/v1.2/xpaas-templates/amq62-basic.json
  4. 10 0
      roles/openshift_examples/files/examples/v1.2/xpaas-templates/amq62-persistent-ssl.json
  5. 10 0
      roles/openshift_examples/files/examples/v1.2/xpaas-templates/amq62-persistent.json
  6. 10 0
      roles/openshift_examples/files/examples/v1.2/xpaas-templates/amq62-ssl.json
  7. 6 2
      roles/openshift_examples/files/examples/v1.2/xpaas-templates/datagrid65-postgresql-persistent.json
  8. 6 2
      roles/openshift_examples/files/examples/v1.2/xpaas-templates/datagrid65-postgresql.json
  9. 2 2
      roles/openshift_examples/files/examples/v1.2/xpaas-templates/decisionserver62-amq-s2i.json
  10. 2 2
      roles/openshift_examples/files/examples/v1.2/xpaas-templates/decisionserver62-basic-s2i.json
  11. 2 2
      roles/openshift_examples/files/examples/v1.2/xpaas-templates/decisionserver62-https-s2i.json
  12. 54 24
      roles/openshift_examples/files/examples/v1.2/xpaas-templates/eap64-amq-persistent-s2i.json
  13. 70 20
      roles/openshift_examples/files/examples/v1.2/xpaas-templates/eap64-amq-s2i.json
  14. 15 5
      roles/openshift_examples/files/examples/v1.2/xpaas-templates/eap64-basic-s2i.json
  15. 32 6
      roles/openshift_examples/files/examples/v1.2/xpaas-templates/eap64-https-s2i.json
  16. 32 6
      roles/openshift_examples/files/examples/v1.2/xpaas-templates/eap64-mongodb-persistent-s2i.json
  17. 32 6
      roles/openshift_examples/files/examples/v1.2/xpaas-templates/eap64-mongodb-s2i.json
  18. 36 6
      roles/openshift_examples/files/examples/v1.2/xpaas-templates/eap64-mysql-persistent-s2i.json
  19. 36 6
      roles/openshift_examples/files/examples/v1.2/xpaas-templates/eap64-mysql-s2i.json
  20. 40 6
      roles/openshift_examples/files/examples/v1.2/xpaas-templates/eap64-postgresql-persistent-s2i.json
  21. 40 6
      roles/openshift_examples/files/examples/v1.2/xpaas-templates/eap64-postgresql-s2i.json
  22. 143 50
      roles/openshift_examples/files/examples/v1.2/xpaas-templates/eap64-sso-s2i.json
  23. 56 26
      roles/openshift_examples/files/examples/v1.2/xpaas-templates/eap70-amq-persistent-s2i.json
  24. 70 20
      roles/openshift_examples/files/examples/v1.2/xpaas-templates/eap70-amq-s2i.json
  25. 27 6
      roles/openshift_examples/files/examples/v1.2/xpaas-templates/eap70-basic-s2i.json
  26. 44 7
      roles/openshift_examples/files/examples/v1.2/xpaas-templates/eap70-https-s2i.json
  27. 44 7
      roles/openshift_examples/files/examples/v1.2/xpaas-templates/eap70-mongodb-persistent-s2i.json
  28. 44 7
      roles/openshift_examples/files/examples/v1.2/xpaas-templates/eap70-mongodb-s2i.json
  29. 44 7
      roles/openshift_examples/files/examples/v1.2/xpaas-templates/eap70-mysql-persistent-s2i.json
  30. 44 7
      roles/openshift_examples/files/examples/v1.2/xpaas-templates/eap70-mysql-s2i.json
  31. 48 7
      roles/openshift_examples/files/examples/v1.2/xpaas-templates/eap70-postgresql-persistent-s2i.json
  32. 48 7
      roles/openshift_examples/files/examples/v1.2/xpaas-templates/eap70-postgresql-s2i.json
  33. 767 0
      roles/openshift_examples/files/examples/v1.2/xpaas-templates/eap70-sso-s2i.json
  34. 2 2
      roles/openshift_examples/files/examples/v1.2/xpaas-templates/jws30-tomcat7-basic-s2i.json
  35. 2 2
      roles/openshift_examples/files/examples/v1.2/xpaas-templates/jws30-tomcat7-https-s2i.json
  36. 2 2
      roles/openshift_examples/files/examples/v1.2/xpaas-templates/jws30-tomcat7-mongodb-persistent-s2i.json
  37. 2 2
      roles/openshift_examples/files/examples/v1.2/xpaas-templates/jws30-tomcat7-mongodb-s2i.json
  38. 2 2
      roles/openshift_examples/files/examples/v1.2/xpaas-templates/jws30-tomcat7-mysql-persistent-s2i.json
  39. 2 2
      roles/openshift_examples/files/examples/v1.2/xpaas-templates/jws30-tomcat7-mysql-s2i.json
  40. 8 4
      roles/openshift_examples/files/examples/v1.2/xpaas-templates/jws30-tomcat7-postgresql-persistent-s2i.json
  41. 8 4
      roles/openshift_examples/files/examples/v1.2/xpaas-templates/jws30-tomcat7-postgresql-s2i.json
  42. 2 2
      roles/openshift_examples/files/examples/v1.2/xpaas-templates/jws30-tomcat8-basic-s2i.json
  43. 2 2
      roles/openshift_examples/files/examples/v1.2/xpaas-templates/jws30-tomcat8-https-s2i.json
  44. 2 2
      roles/openshift_examples/files/examples/v1.2/xpaas-templates/jws30-tomcat8-mongodb-persistent-s2i.json
  45. 2 2
      roles/openshift_examples/files/examples/v1.2/xpaas-templates/jws30-tomcat8-mongodb-s2i.json
  46. 2 2
      roles/openshift_examples/files/examples/v1.2/xpaas-templates/jws30-tomcat8-mysql-persistent-s2i.json
  47. 2 2
      roles/openshift_examples/files/examples/v1.2/xpaas-templates/jws30-tomcat8-mysql-s2i.json
  48. 8 4
      roles/openshift_examples/files/examples/v1.2/xpaas-templates/jws30-tomcat8-postgresql-persistent-s2i.json
  49. 8 4
      roles/openshift_examples/files/examples/v1.2/xpaas-templates/jws30-tomcat8-postgresql-s2i.json
  50. 143 75
      roles/openshift_examples/files/examples/v1.2/xpaas-templates/sso70-basic.json
  51. 139 47
      roles/openshift_examples/files/examples/v1.2/xpaas-templates/sso70-mysql-persistent.json
  52. 139 47
      roles/openshift_examples/files/examples/v1.2/xpaas-templates/sso70-mysql.json
  53. 143 47
      roles/openshift_examples/files/examples/v1.2/xpaas-templates/sso70-postgresql-persistent.json
  54. 145 49
      roles/openshift_examples/files/examples/v1.2/xpaas-templates/sso70-postgresql.json
  55. 29 6
      roles/openshift_examples/files/examples/v1.3/xpaas-streams/jboss-image-streams.json
  56. 10 0
      roles/openshift_examples/files/examples/v1.3/xpaas-templates/amq62-basic.json
  57. 10 0
      roles/openshift_examples/files/examples/v1.3/xpaas-templates/amq62-persistent-ssl.json
  58. 10 0
      roles/openshift_examples/files/examples/v1.3/xpaas-templates/amq62-persistent.json
  59. 10 0
      roles/openshift_examples/files/examples/v1.3/xpaas-templates/amq62-ssl.json
  60. 6 2
      roles/openshift_examples/files/examples/v1.3/xpaas-templates/datagrid65-postgresql-persistent.json
  61. 6 2
      roles/openshift_examples/files/examples/v1.3/xpaas-templates/datagrid65-postgresql.json
  62. 2 2
      roles/openshift_examples/files/examples/v1.3/xpaas-templates/decisionserver62-amq-s2i.json
  63. 2 2
      roles/openshift_examples/files/examples/v1.3/xpaas-templates/decisionserver62-basic-s2i.json
  64. 2 2
      roles/openshift_examples/files/examples/v1.3/xpaas-templates/decisionserver62-https-s2i.json
  65. 54 24
      roles/openshift_examples/files/examples/v1.3/xpaas-templates/eap64-amq-persistent-s2i.json
  66. 70 20
      roles/openshift_examples/files/examples/v1.3/xpaas-templates/eap64-amq-s2i.json
  67. 15 5
      roles/openshift_examples/files/examples/v1.3/xpaas-templates/eap64-basic-s2i.json
  68. 32 6
      roles/openshift_examples/files/examples/v1.3/xpaas-templates/eap64-https-s2i.json
  69. 32 6
      roles/openshift_examples/files/examples/v1.3/xpaas-templates/eap64-mongodb-persistent-s2i.json
  70. 32 6
      roles/openshift_examples/files/examples/v1.3/xpaas-templates/eap64-mongodb-s2i.json
  71. 36 6
      roles/openshift_examples/files/examples/v1.3/xpaas-templates/eap64-mysql-persistent-s2i.json
  72. 36 6
      roles/openshift_examples/files/examples/v1.3/xpaas-templates/eap64-mysql-s2i.json
  73. 40 6
      roles/openshift_examples/files/examples/v1.3/xpaas-templates/eap64-postgresql-persistent-s2i.json
  74. 40 6
      roles/openshift_examples/files/examples/v1.3/xpaas-templates/eap64-postgresql-s2i.json
  75. 143 50
      roles/openshift_examples/files/examples/v1.3/xpaas-templates/eap64-sso-s2i.json
  76. 56 26
      roles/openshift_examples/files/examples/v1.3/xpaas-templates/eap70-amq-persistent-s2i.json
  77. 70 20
      roles/openshift_examples/files/examples/v1.3/xpaas-templates/eap70-amq-s2i.json
  78. 27 6
      roles/openshift_examples/files/examples/v1.3/xpaas-templates/eap70-basic-s2i.json
  79. 44 7
      roles/openshift_examples/files/examples/v1.3/xpaas-templates/eap70-https-s2i.json
  80. 44 7
      roles/openshift_examples/files/examples/v1.3/xpaas-templates/eap70-mongodb-persistent-s2i.json
  81. 44 7
      roles/openshift_examples/files/examples/v1.3/xpaas-templates/eap70-mongodb-s2i.json
  82. 44 7
      roles/openshift_examples/files/examples/v1.3/xpaas-templates/eap70-mysql-persistent-s2i.json
  83. 44 7
      roles/openshift_examples/files/examples/v1.3/xpaas-templates/eap70-mysql-s2i.json
  84. 48 7
      roles/openshift_examples/files/examples/v1.3/xpaas-templates/eap70-postgresql-persistent-s2i.json
  85. 48 7
      roles/openshift_examples/files/examples/v1.3/xpaas-templates/eap70-postgresql-s2i.json
  86. 767 0
      roles/openshift_examples/files/examples/v1.3/xpaas-templates/eap70-sso-s2i.json
  87. 2 2
      roles/openshift_examples/files/examples/v1.3/xpaas-templates/jws30-tomcat7-basic-s2i.json
  88. 2 2
      roles/openshift_examples/files/examples/v1.3/xpaas-templates/jws30-tomcat7-https-s2i.json
  89. 2 2
      roles/openshift_examples/files/examples/v1.3/xpaas-templates/jws30-tomcat7-mongodb-persistent-s2i.json
  90. 2 2
      roles/openshift_examples/files/examples/v1.3/xpaas-templates/jws30-tomcat7-mongodb-s2i.json
  91. 2 2
      roles/openshift_examples/files/examples/v1.3/xpaas-templates/jws30-tomcat7-mysql-persistent-s2i.json
  92. 2 2
      roles/openshift_examples/files/examples/v1.3/xpaas-templates/jws30-tomcat7-mysql-s2i.json
  93. 8 4
      roles/openshift_examples/files/examples/v1.3/xpaas-templates/jws30-tomcat7-postgresql-persistent-s2i.json
  94. 8 4
      roles/openshift_examples/files/examples/v1.3/xpaas-templates/jws30-tomcat7-postgresql-s2i.json
  95. 2 2
      roles/openshift_examples/files/examples/v1.3/xpaas-templates/jws30-tomcat8-basic-s2i.json
  96. 2 2
      roles/openshift_examples/files/examples/v1.3/xpaas-templates/jws30-tomcat8-https-s2i.json
  97. 2 2
      roles/openshift_examples/files/examples/v1.3/xpaas-templates/jws30-tomcat8-mongodb-persistent-s2i.json
  98. 2 2
      roles/openshift_examples/files/examples/v1.3/xpaas-templates/jws30-tomcat8-mongodb-s2i.json
  99. 2 2
      roles/openshift_examples/files/examples/v1.3/xpaas-templates/jws30-tomcat8-mysql-persistent-s2i.json
  100. 0 0
      roles/openshift_examples/files/examples/v1.3/xpaas-templates/jws30-tomcat8-mysql-s2i.json

+ 1 - 1
roles/openshift_examples/examples-sync.sh

@@ -5,7 +5,7 @@
 #
 #
 # This script should be run from openshift-ansible/roles/openshift_examples
 # This script should be run from openshift-ansible/roles/openshift_examples
 
 
-XPAAS_VERSION=ose-v1.3.1
+XPAAS_VERSION=ose-v1.3.2
 ORIGIN_VERSION=${1:-v1.3}
 ORIGIN_VERSION=${1:-v1.3}
 EXAMPLES_BASE=$(pwd)/files/examples/${ORIGIN_VERSION}
 EXAMPLES_BASE=$(pwd)/files/examples/${ORIGIN_VERSION}
 find ${EXAMPLES_BASE} -name '*.json' -delete
 find ${EXAMPLES_BASE} -name '*.json' -delete

+ 29 - 6
roles/openshift_examples/files/examples/v1.2/xpaas-streams/jboss-image-streams.json

@@ -127,6 +127,19 @@
                             "sampleRef": "6.4.x",
                             "sampleRef": "6.4.x",
                             "version": "1.3"
                             "version": "1.3"
                         }
                         }
+                    },
+                    {
+                        "name": "1.4",
+                        "annotations": {
+                            "description": "JBoss EAP 6.4 S2I images.",
+                            "iconClass": "icon-jboss",
+                            "tags": "builder,eap,javaee,java,jboss,xpaas",
+                            "supports":"eap:6.4,javaee:6,java:8,xpaas:1.4",
+                            "sampleRepo": "https://github.com/jboss-developer/jboss-eap-quickstarts.git",
+                            "sampleContextDir": "kitchensink",
+                            "sampleRef": "6.4.x",
+                            "version": "1.4"
+                        }
                     }
                     }
                 ]
                 ]
             }
             }
@@ -152,6 +165,19 @@
                             "sampleRef": "7.0.0.GA",
                             "sampleRef": "7.0.0.GA",
                             "version": "1.3"
                             "version": "1.3"
                         }
                         }
+                    },
+                    {
+                        "name": "1.4",
+                        "annotations": {
+                            "description": "JBoss EAP 7.0 S2I images.",
+                            "iconClass": "icon-jboss",
+                            "tags": "builder,eap,javaee,java,jboss,xpaas",
+                            "supports":"eap:7.0,javaee:7,java:8,xpaas:1.4",
+                            "sampleRepo": "https://github.com/jboss-developer/jboss-eap-quickstarts.git",
+                            "sampleContextDir": "kitchensink",
+                            "sampleRef": "7.0.0.GA",
+                            "version": "1.4"
+                        }
                     }
                     }
                 ]
                 ]
             }
             }
@@ -255,19 +281,16 @@
                 }
                 }
             },
             },
             "spec": {
             "spec": {
+                "dockerImageRepository": "registry.access.redhat.com/redhat-sso-7/sso70-openshift",
                 "tags": [
                 "tags": [
                     {
                     {
-                        "name": "1.3-TP",
+                        "name": "1.3",
                         "annotations": {
                         "annotations": {
-                            "description": "Red Hat SSO 7.0 Tech Preview",
+                            "description": "Red Hat SSO 7.0",
                             "iconClass": "icon-jboss",
                             "iconClass": "icon-jboss",
                             "tags": "sso,keycloak,redhat",
                             "tags": "sso,keycloak,redhat",
                             "supports":"sso:7.0,xpaas:1.3",
                             "supports":"sso:7.0,xpaas:1.3",
                             "version": "1.3"
                             "version": "1.3"
-                        },
-                        "from": {
-                          "kind": "DockerImage",
-                          "name": "registry.access.redhat.com/redhat-sso-7-tech-preview/sso70-openshift:1.3"
                         }
                         }
                     }
                     }
                 ]
                 ]

+ 10 - 0
roles/openshift_examples/files/examples/v1.2/xpaas-templates/amq62-basic.json

@@ -40,6 +40,12 @@
             "required": false
             "required": false
         },
         },
         {
         {
+            "description": "List of packages that are allowed to be serialized for use in ObjectMessage, separated by commas. If your app doesn't use ObjectMessages, leave this blank. This is a security enforcement. For the rationale, see http://activemq.apache.org/objectmessage.html",
+            "name": "MQ_SERIALIZABLE_PACKAGES",
+            "value": "",
+            "required": false
+        },
+        {
             "description": "User name for standard broker user. It is required for connecting to the broker. If left empty, it will be generated.",
             "description": "User name for standard broker user. It is required for connecting to the broker. If left empty, it will be generated.",
             "name": "MQ_USERNAME",
             "name": "MQ_USERNAME",
             "from": "user[a-zA-Z0-9]{3}",
             "from": "user[a-zA-Z0-9]{3}",
@@ -281,6 +287,10 @@
                                         "value": "${MQ_TOPICS}"
                                         "value": "${MQ_TOPICS}"
                                     },
                                     },
                                     {
                                     {
+                                        "name": "MQ_SERIALIZABLE_PACKAGES",
+                                        "value": "${MQ_SERIALIZABLE_PACKAGES}"
+                                    },
+                                    {
                                         "name": "AMQ_MESH_DISCOVERY_TYPE",
                                         "name": "AMQ_MESH_DISCOVERY_TYPE",
                                         "value": "${AMQ_MESH_DISCOVERY_TYPE}"
                                         "value": "${AMQ_MESH_DISCOVERY_TYPE}"
                                     },
                                     },

+ 10 - 0
roles/openshift_examples/files/examples/v1.2/xpaas-templates/amq62-persistent-ssl.json

@@ -46,6 +46,12 @@
             "required": false
             "required": false
         },
         },
         {
         {
+            "description": "List of packages that are allowed to be serialized for use in ObjectMessage, separated by commas. If your app doesn't use ObjectMessages, leave this blank. This is a security enforcement. For the rationale, see http://activemq.apache.org/objectmessage.html",
+            "name": "MQ_SERIALIZABLE_PACKAGES",
+            "value": "",
+            "required": false
+        },
+        {
             "description": "Size of persistent storage for database volume.",
             "description": "Size of persistent storage for database volume.",
             "name": "VOLUME_CAPACITY",
             "name": "VOLUME_CAPACITY",
             "value": "512Mi",
             "value": "512Mi",
@@ -451,6 +457,10 @@
                                         "value": "${MQ_TOPICS}"
                                         "value": "${MQ_TOPICS}"
                                     },
                                     },
                                     {
                                     {
+                                        "name": "MQ_SERIALIZABLE_PACKAGES",
+                                        "value": "${MQ_SERIALIZABLE_PACKAGES}"
+                                    },
+                                    {
                                         "name": "AMQ_SPLIT",
                                         "name": "AMQ_SPLIT",
                                         "value": "${AMQ_SPLIT}"
                                         "value": "${AMQ_SPLIT}"
                                     },
                                     },

+ 10 - 0
roles/openshift_examples/files/examples/v1.2/xpaas-templates/amq62-persistent.json

@@ -46,6 +46,12 @@
             "required": false
             "required": false
         },
         },
         {
         {
+            "description": "List of packages that are allowed to be serialized for use in ObjectMessage, separated by commas. If your app doesn't use ObjectMessages, leave this blank. This is a security enforcement. For the rationale, see http://activemq.apache.org/objectmessage.html",
+            "name": "MQ_SERIALIZABLE_PACKAGES",
+            "value": "",
+            "required": false
+        },
+        {
             "description": "Size of persistent storage for database volume.",
             "description": "Size of persistent storage for database volume.",
             "name": "VOLUME_CAPACITY",
             "name": "VOLUME_CAPACITY",
             "value": "512Mi",
             "value": "512Mi",
@@ -299,6 +305,10 @@
                                         "value": "${MQ_TOPICS}"
                                         "value": "${MQ_TOPICS}"
                                     },
                                     },
                                     {
                                     {
+                                        "name": "MQ_SERIALIZABLE_PACKAGES",
+                                        "value": "${MQ_SERIALIZABLE_PACKAGES}"
+                                    },
+                                    {
                                         "name": "AMQ_SPLIT",
                                         "name": "AMQ_SPLIT",
                                         "value": "${AMQ_SPLIT}"
                                         "value": "${AMQ_SPLIT}"
                                     },
                                     },

+ 10 - 0
roles/openshift_examples/files/examples/v1.2/xpaas-templates/amq62-ssl.json

@@ -40,6 +40,12 @@
             "required": false
             "required": false
         },
         },
         {
         {
+            "description": "List of packages that are allowed to be serialized for use in ObjectMessage, separated by commas. If your app doesn't use ObjectMessages, leave this blank. This is a security enforcement. For the rationale, see http://activemq.apache.org/objectmessage.html",
+            "name": "MQ_SERIALIZABLE_PACKAGES",
+            "value": "",
+            "required": false
+        },
+        {
             "description": "User name for standard broker user. It is required for connecting to the broker. If left empty, it will be generated.",
             "description": "User name for standard broker user. It is required for connecting to the broker. If left empty, it will be generated.",
             "name": "MQ_USERNAME",
             "name": "MQ_USERNAME",
             "from": "user[a-zA-Z0-9]{3}",
             "from": "user[a-zA-Z0-9]{3}",
@@ -435,6 +441,10 @@
                                         "value": "${MQ_TOPICS}"
                                         "value": "${MQ_TOPICS}"
                                     },
                                     },
                                     {
                                     {
+                                        "name": "MQ_SERIALIZABLE_PACKAGES",
+                                        "value": "${MQ_SERIALIZABLE_PACKAGES}"
+                                    },
+                                    {
                                         "name": "AMQ_MESH_DISCOVERY_TYPE",
                                         "name": "AMQ_MESH_DISCOVERY_TYPE",
                                         "value": "${AMQ_MESH_DISCOVERY_TYPE}"
                                         "value": "${AMQ_MESH_DISCOVERY_TYPE}"
                                     },
                                     },

+ 6 - 2
roles/openshift_examples/files/examples/v1.2/xpaas-templates/datagrid65-postgresql-persistent.json

@@ -6,13 +6,13 @@
             "iconClass": "icon-jboss",
             "iconClass": "icon-jboss",
             "description": "Application template for JDG 6.5 and PostgreSQL applications with persistent storage.",
             "description": "Application template for JDG 6.5 and PostgreSQL applications with persistent storage.",
             "tags": "datagrid,jboss,xpaas",
             "tags": "datagrid,jboss,xpaas",
-            "version": "1.2.0"
+            "version": "1.3.2"
         },
         },
         "name": "datagrid65-postgresql-persistent"
         "name": "datagrid65-postgresql-persistent"
     },
     },
     "labels": {
     "labels": {
         "template": "datagrid65-postgresql-persistent",
         "template": "datagrid65-postgresql-persistent",
-        "xpaas": "1.2.0"
+        "xpaas": "1.3.2"
     },
     },
     "parameters": [
     "parameters": [
         {
         {
@@ -710,6 +710,10 @@
                                         "value": "${POSTGRESQL_MAX_CONNECTIONS}"
                                         "value": "${POSTGRESQL_MAX_CONNECTIONS}"
                                     },
                                     },
                                     {
                                     {
+                                        "name": "POSTGRESQL_MAX_PREPARED_TRANSACTIONS",
+                                        "value": "${POSTGRESQL_MAX_CONNECTIONS}"
+                                    },
+                                    {
                                         "name": "POSTGRESQL_SHARED_BUFFERS",
                                         "name": "POSTGRESQL_SHARED_BUFFERS",
                                         "value": "${POSTGRESQL_SHARED_BUFFERS}"
                                         "value": "${POSTGRESQL_SHARED_BUFFERS}"
                                     }
                                     }

+ 6 - 2
roles/openshift_examples/files/examples/v1.2/xpaas-templates/datagrid65-postgresql.json

@@ -6,13 +6,13 @@
             "iconClass": "icon-jboss",
             "iconClass": "icon-jboss",
             "description": "Application template for JDG 6.5 and PostgreSQL applications built using.",
             "description": "Application template for JDG 6.5 and PostgreSQL applications built using.",
             "tags": "datagrid,jboss,xpaas",
             "tags": "datagrid,jboss,xpaas",
-            "version": "1.2.0"
+            "version": "1.3.2"
         },
         },
         "name": "datagrid65-postgresql"
         "name": "datagrid65-postgresql"
     },
     },
     "labels": {
     "labels": {
         "template": "datagrid65-postgresql",
         "template": "datagrid65-postgresql",
-        "xpaas": "1.2.0"
+        "xpaas": "1.3.2"
     },
     },
     "parameters": [
     "parameters": [
         {
         {
@@ -698,6 +698,10 @@
                                         "value": "${POSTGRESQL_MAX_CONNECTIONS}"
                                         "value": "${POSTGRESQL_MAX_CONNECTIONS}"
                                     },
                                     },
                                     {
                                     {
+                                        "name": "POSTGRESQL_MAX_PREPARED_TRANSACTIONS",
+                                        "value": "${POSTGRESQL_MAX_CONNECTIONS}"
+                                    },
+                                    {
                                         "name": "POSTGRESQL_SHARED_BUFFERS",
                                         "name": "POSTGRESQL_SHARED_BUFFERS",
                                         "value": "${POSTGRESQL_SHARED_BUFFERS}"
                                         "value": "${POSTGRESQL_SHARED_BUFFERS}"
                                     }
                                     }

+ 2 - 2
roles/openshift_examples/files/examples/v1.2/xpaas-templates/decisionserver62-amq-s2i.json

@@ -391,8 +391,8 @@
                                 "${APPLICATION_NAME}"
                                 "${APPLICATION_NAME}"
                             ],
                             ],
                             "from": {
                             "from": {
-                                "kind": "ImageStream",
-                                "name": "${APPLICATION_NAME}"
+                                "kind": "ImageStreamTag",
+                                "name": "${APPLICATION_NAME}:latest"
                             }
                             }
                         }
                         }
                     },
                     },

+ 2 - 2
roles/openshift_examples/files/examples/v1.2/xpaas-templates/decisionserver62-basic-s2i.json

@@ -245,8 +245,8 @@
                                 "${APPLICATION_NAME}"
                                 "${APPLICATION_NAME}"
                             ],
                             ],
                             "from": {
                             "from": {
-                                "kind": "ImageStream",
-                                "name": "${APPLICATION_NAME}"
+                                "kind": "ImageStreamTag",
+                                "name": "${APPLICATION_NAME}:latest"
                             }
                             }
                         }
                         }
                     },
                     },

+ 2 - 2
roles/openshift_examples/files/examples/v1.2/xpaas-templates/decisionserver62-https-s2i.json

@@ -334,8 +334,8 @@
                                 "${APPLICATION_NAME}"
                                 "${APPLICATION_NAME}"
                             ],
                             ],
                             "from": {
                             "from": {
-                                "kind": "ImageStream",
-                                "name": "${APPLICATION_NAME}"
+                                "kind": "ImageStreamTag",
+                                "name": "${APPLICATION_NAME}:latest"
                             }
                             }
                         }
                         }
                     },
                     },

+ 54 - 24
roles/openshift_examples/files/examples/v1.2/xpaas-templates/eap64-amq-persistent-s2i.json

@@ -6,13 +6,13 @@
             "description": "Application template for EAP 6 A-MQ applications with persistent storage built using S2I.",
             "description": "Application template for EAP 6 A-MQ applications with persistent storage built using S2I.",
             "iconClass": "icon-jboss",
             "iconClass": "icon-jboss",
             "tags": "eap,amq,javaee,java,messaging,jboss,xpaas",
             "tags": "eap,amq,javaee,java,messaging,jboss,xpaas",
-            "version": "1.3.1"
+            "version": "1.3.2"
         },
         },
         "name": "eap64-amq-persistent-s2i"
         "name": "eap64-amq-persistent-s2i"
     },
     },
     "labels": {
     "labels": {
         "template": "eap64-amq-persistent-s2i",
         "template": "eap64-amq-persistent-s2i",
-        "xpaas": "1.3.1"
+        "xpaas": "1.3.2"
     },
     },
     "parameters": [
     "parameters": [
         {
         {
@@ -88,6 +88,18 @@
             "required": false
             "required": false
         },
         },
         {
         {
+            "description": "List of packages that are allowed to be serialized for use in ObjectMessage, separated by commas. If your app doesn't use ObjectMessages, leave this blank. This is a security enforcement. For the rationale, see http://activemq.apache.org/objectmessage.html",
+            "name": "MQ_SERIALIZABLE_PACKAGES",
+            "value": "",
+            "required": false
+        },
+        {
+            "description": "The name of the service account to use for the deployment.  The service account should be configured to allow useage of the secret(s) specified by HTTPS_SECRET and JGROUPS_ENCRYPT_SECRET.",
+            "name": "SERVICE_ACCOUNT_NAME",
+            "value": "eap-service-account",
+            "required": true
+        },
+        {
             "description": "The name of the secret containing the keystore file",
             "description": "The name of the secret containing the keystore file",
             "name": "HTTPS_SECRET",
             "name": "HTTPS_SECRET",
             "value": "eap-app-secret",
             "value": "eap-app-secret",
@@ -100,6 +112,12 @@
             "required": false
             "required": false
         },
         },
         {
         {
+            "description": "The type of the keystore file (JKS or JCEKS)",
+            "name": "HTTPS_KEYSTORE_TYPE",
+            "value": "",
+            "required": false
+        },
+        {
             "description": "The name associated with the server certificate",
             "description": "The name associated with the server certificate",
             "name": "HTTPS_NAME",
             "name": "HTTPS_NAME",
             "value": "",
             "value": "",
@@ -126,18 +144,16 @@
             "required": false
             "required": false
         },
         },
         {
         {
-            "description": "User name for broker admin. If left empty, it will be generated.",
-            "name": "AMQ_ADMIN_USERNAME",
-            "from": "user[a-zA-Z0-9]{3}",
-            "generate": "expression",
-            "required": true
+            "description": "The discovery agent type to use for discovering mesh endpoints.  'dns' will use OpenShift's DNS service to resolve endpoints.  'kube' will use Kubernetes REST API to resolve service endpoints.  If using 'kube' the service account for the pod must have the 'view' role, which can be added via 'oc policy add-role-to-user view system:serviceaccount:<namespace>:default' where <namespace> is the project namespace.",
+            "name": "AMQ_MESH_DISCOVERY_TYPE",
+            "value": "kube",
+            "required": false
         },
         },
         {
         {
-            "description": "Password for broker admin. If left empty, it will be generated.",
-            "name": "AMQ_ADMIN_PASSWORD",
-            "from": "[a-zA-Z0-9]{8}",
-            "generate": "expression",
-            "required": true
+            "description": "The A-MQ storage usage limit",
+            "name": "AMQ_STORAGE_USAGE_LIMIT",
+            "value": "100 gb",
+            "required": false
         },
         },
         {
         {
             "description": "GitHub trigger secret",
             "description": "GitHub trigger secret",
@@ -189,6 +205,12 @@
             "from": "[a-zA-Z0-9]{8}",
             "from": "[a-zA-Z0-9]{8}",
             "generate": "expression",
             "generate": "expression",
             "required": true
             "required": true
+        },
+        {
+            "description": "Controls whether exploded deployment content should be automatically deployed",
+            "name": "AUTO_DEPLOY_EXPLODED",
+            "value": "false",
+            "required": false
         }
         }
     ],
     ],
     "objects": [
     "objects": [
@@ -342,7 +364,7 @@
                         "from": {
                         "from": {
                             "kind": "ImageStreamTag",
                             "kind": "ImageStreamTag",
                             "namespace": "${IMAGE_STREAM_NAMESPACE}",
                             "namespace": "${IMAGE_STREAM_NAMESPACE}",
-                            "name": "jboss-eap64-openshift:1.2"
+                            "name": "jboss-eap64-openshift:1.4"
                         }
                         }
                     }
                     }
                 },
                 },
@@ -397,8 +419,8 @@
                                 "${APPLICATION_NAME}"
                                 "${APPLICATION_NAME}"
                             ],
                             ],
                             "from": {
                             "from": {
-                                "kind": "ImageStream",
-                                "name": "${APPLICATION_NAME}"
+                                "kind": "ImageStreamTag",
+                                "name": "${APPLICATION_NAME}:latest"
                             }
                             }
                         }
                         }
                     },
                     },
@@ -419,7 +441,7 @@
                         }
                         }
                     },
                     },
                     "spec": {
                     "spec": {
-                        "serviceAccountName": "eap-service-account",
+                        "serviceAccountName": "${SERVICE_ACCOUNT_NAME}",
                         "terminationGracePeriodSeconds": 60,
                         "terminationGracePeriodSeconds": 60,
                         "containers": [
                         "containers": [
                             {
                             {
@@ -508,6 +530,10 @@
                                         "value": "${MQ_TOPICS}"
                                         "value": "${MQ_TOPICS}"
                                     },
                                     },
                                     {
                                     {
+                                        "name": "MQ_SERIALIZABLE_PACKAGES",
+                                        "value": "${MQ_SERIALIZABLE_PACKAGES}"
+                                    },
+                                    {
                                         "name": "OPENSHIFT_KUBE_PING_LABELS",
                                         "name": "OPENSHIFT_KUBE_PING_LABELS",
                                         "value": "application=${APPLICATION_NAME}"
                                         "value": "application=${APPLICATION_NAME}"
                                     },
                                     },
@@ -528,6 +554,10 @@
                                         "value": "${HTTPS_KEYSTORE}"
                                         "value": "${HTTPS_KEYSTORE}"
                                     },
                                     },
                                     {
                                     {
+                                        "name": "HTTPS_KEYSTORE_TYPE",
+                                        "value": "${HTTPS_KEYSTORE_TYPE}"
+                                    },
+                                    {
                                         "name": "HTTPS_NAME",
                                         "name": "HTTPS_NAME",
                                         "value": "${HTTPS_NAME}"
                                         "value": "${HTTPS_NAME}"
                                     },
                                     },
@@ -558,6 +588,10 @@
                                     {
                                     {
                                         "name": "JGROUPS_CLUSTER_PASSWORD",
                                         "name": "JGROUPS_CLUSTER_PASSWORD",
                                         "value": "${JGROUPS_CLUSTER_PASSWORD}"
                                         "value": "${JGROUPS_CLUSTER_PASSWORD}"
+                                    },
+                                    {
+                                        "name": "AUTO_DEPLOY_EXPLODED",
+                                        "value": "${AUTO_DEPLOY_EXPLODED}"
                                     }
                                     }
                                 ]
                                 ]
                             }
                             }
@@ -713,6 +747,10 @@
                                         "value": "${MQ_TOPICS}"
                                         "value": "${MQ_TOPICS}"
                                     },
                                     },
                                     {
                                     {
+                                        "name": "MQ_SERIALIZABLE_PACKAGES",
+                                        "value": "${MQ_SERIALIZABLE_PACKAGES}"
+                                    },
+                                    {
                                         "name": "AMQ_SPLIT",
                                         "name": "AMQ_SPLIT",
                                         "value": "${AMQ_SPLIT}"
                                         "value": "${AMQ_SPLIT}"
                                     },
                                     },
@@ -735,14 +773,6 @@
                                     {
                                     {
                                         "name": "AMQ_STORAGE_USAGE_LIMIT",
                                         "name": "AMQ_STORAGE_USAGE_LIMIT",
                                         "value": "${AMQ_STORAGE_USAGE_LIMIT}"
                                         "value": "${AMQ_STORAGE_USAGE_LIMIT}"
-                                    },
-                                    {
-                                        "name": "AMQ_ADMIN_USERNAME",
-                                        "value": "${AMQ_ADMIN_USERNAME}"
-                                    },
-                                    {
-                                        "name": "AMQ_ADMIN_PASSWORD",
-                                        "value": "${AMQ_ADMIN_PASSWORD}"
                                     }
                                     }
                                 ]
                                 ]
                             }
                             }

+ 70 - 20
roles/openshift_examples/files/examples/v1.2/xpaas-templates/eap64-amq-s2i.json

@@ -6,13 +6,13 @@
             "description": "Application template for EAP 6 A-MQ applications built using S2I.",
             "description": "Application template for EAP 6 A-MQ applications built using S2I.",
             "iconClass": "icon-jboss",
             "iconClass": "icon-jboss",
             "tags": "eap,amq,javaee,java,messaging,jboss,xpaas",
             "tags": "eap,amq,javaee,java,messaging,jboss,xpaas",
-            "version": "1.3.1"
+            "version": "1.3.2"
         },
         },
         "name": "eap64-amq-s2i"
         "name": "eap64-amq-s2i"
     },
     },
     "labels": {
     "labels": {
         "template": "eap64-amq-s2i",
         "template": "eap64-amq-s2i",
-        "xpaas": "1.3.1"
+        "xpaas": "1.3.2"
     },
     },
     "parameters": [
     "parameters": [
         {
         {
@@ -76,6 +76,18 @@
             "required": false
             "required": false
         },
         },
         {
         {
+            "description": "List of packages that are allowed to be serialized for use in ObjectMessage, separated by commas. If your app doesn't use ObjectMessages, leave this blank. This is a security enforcement. For the rationale, see http://activemq.apache.org/objectmessage.html",
+            "name": "MQ_SERIALIZABLE_PACKAGES",
+            "value": "",
+            "required": false
+        },
+        {
+            "description": "The name of the service account to use for the deployment.  The service account should be configured to allow useage of the secret(s) specified by HTTPS_SECRET and JGROUPS_ENCRYPT_SECRET.",
+            "name": "SERVICE_ACCOUNT_NAME",
+            "value": "eap-service-account",
+            "required": true
+        },
+        {
             "description": "The name of the secret containing the keystore file",
             "description": "The name of the secret containing the keystore file",
             "name": "HTTPS_SECRET",
             "name": "HTTPS_SECRET",
             "value": "eap-app-secret",
             "value": "eap-app-secret",
@@ -88,6 +100,12 @@
             "required": false
             "required": false
         },
         },
         {
         {
+            "description": "The type of the keystore file (JKS or JCEKS)",
+            "name": "HTTPS_KEYSTORE_TYPE",
+            "value": "",
+            "required": false
+        },
+        {
             "description": "The name associated with the server certificate",
             "description": "The name associated with the server certificate",
             "name": "HTTPS_NAME",
             "name": "HTTPS_NAME",
             "value": "",
             "value": "",
@@ -114,18 +132,16 @@
             "required": false
             "required": false
         },
         },
         {
         {
-            "description": "User name for broker admin. If left empty, it will be generated.",
-            "name": "AMQ_ADMIN_USERNAME",
-            "from": "user[a-zA-Z0-9]{3}",
-            "generate": "expression",
-            "required": true
+            "description": "The discovery agent type to use for discovering mesh endpoints.  'dns' will use OpenShift's DNS service to resolve endpoints.  'kube' will use Kubernetes REST API to resolve service endpoints.  If using 'kube' the service account for the pod must have the 'view' role, which can be added via 'oc policy add-role-to-user view system:serviceaccount:<namespace>:default' where <namespace> is the project namespace.",
+            "name": "AMQ_MESH_DISCOVERY_TYPE",
+            "value": "kube",
+            "required": false
         },
         },
         {
         {
-            "description": "Password for broker admin. If left empty, it will be generated.",
-            "name": "AMQ_ADMIN_PASSWORD",
-            "from": "[a-zA-Z0-9]{8}",
-            "generate": "expression",
-            "required": true
+            "description": "The A-MQ storage usage limit",
+            "name": "AMQ_STORAGE_USAGE_LIMIT",
+            "value": "100 gb",
+            "required": false
         },
         },
         {
         {
             "description": "GitHub trigger secret",
             "description": "GitHub trigger secret",
@@ -177,6 +193,12 @@
             "from": "[a-zA-Z0-9]{8}",
             "from": "[a-zA-Z0-9]{8}",
             "generate": "expression",
             "generate": "expression",
             "required": true
             "required": true
+        },
+        {
+            "description": "Controls whether exploded deployment content should be automatically deployed",
+            "name": "AUTO_DEPLOY_EXPLODED",
+            "value": "false",
+            "required": false
         }
         }
     ],
     ],
     "objects": [
     "objects": [
@@ -330,7 +352,7 @@
                         "from": {
                         "from": {
                             "kind": "ImageStreamTag",
                             "kind": "ImageStreamTag",
                             "namespace": "${IMAGE_STREAM_NAMESPACE}",
                             "namespace": "${IMAGE_STREAM_NAMESPACE}",
-                            "name": "jboss-eap64-openshift:1.2"
+                            "name": "jboss-eap64-openshift:1.4"
                         }
                         }
                     }
                     }
                 },
                 },
@@ -385,8 +407,8 @@
                                 "${APPLICATION_NAME}"
                                 "${APPLICATION_NAME}"
                             ],
                             ],
                             "from": {
                             "from": {
-                                "kind": "ImageStream",
-                                "name": "${APPLICATION_NAME}"
+                                "kind": "ImageStreamTag",
+                                "name": "${APPLICATION_NAME}:latest"
                             }
                             }
                         }
                         }
                     },
                     },
@@ -407,7 +429,7 @@
                         }
                         }
                     },
                     },
                     "spec": {
                     "spec": {
-                        "serviceAccountName": "eap-service-account",
+                        "serviceAccountName": "${SERVICE_ACCOUNT_NAME}",
                         "terminationGracePeriodSeconds": 60,
                         "terminationGracePeriodSeconds": 60,
                         "containers": [
                         "containers": [
                             {
                             {
@@ -496,6 +518,10 @@
                                         "value": "${MQ_TOPICS}"
                                         "value": "${MQ_TOPICS}"
                                     },
                                     },
                                     {
                                     {
+                                        "name": "MQ_SERIALIZABLE_PACKAGES",
+                                        "value": "${MQ_SERIALIZABLE_PACKAGES}"
+                                    },
+                                    {
                                         "name": "OPENSHIFT_KUBE_PING_LABELS",
                                         "name": "OPENSHIFT_KUBE_PING_LABELS",
                                         "value": "application=${APPLICATION_NAME}"
                                         "value": "application=${APPLICATION_NAME}"
                                     },
                                     },
@@ -516,6 +542,10 @@
                                         "value": "${HTTPS_KEYSTORE}"
                                         "value": "${HTTPS_KEYSTORE}"
                                     },
                                     },
                                     {
                                     {
+                                        "name": "HTTPS_KEYSTORE_TYPE",
+                                        "value": "${HTTPS_KEYSTORE_TYPE}"
+                                    },
+                                    {
                                         "name": "HTTPS_NAME",
                                         "name": "HTTPS_NAME",
                                         "value": "${HTTPS_NAME}"
                                         "value": "${HTTPS_NAME}"
                                     },
                                     },
@@ -546,6 +576,10 @@
                                     {
                                     {
                                         "name": "JGROUPS_CLUSTER_PASSWORD",
                                         "name": "JGROUPS_CLUSTER_PASSWORD",
                                         "value": "${JGROUPS_CLUSTER_PASSWORD}"
                                         "value": "${JGROUPS_CLUSTER_PASSWORD}"
+                                    },
+                                    {
+                                        "name": "AUTO_DEPLOY_EXPLODED",
+                                        "value": "${AUTO_DEPLOY_EXPLODED}"
                                     }
                                     }
                                 ]
                                 ]
                             }
                             }
@@ -692,12 +726,28 @@
                                         "value": "${MQ_TOPICS}"
                                         "value": "${MQ_TOPICS}"
                                     },
                                     },
                                     {
                                     {
-                                        "name": "AMQ_ADMIN_USERNAME",
-                                        "value": "${AMQ_ADMIN_USERNAME}"
+                                        "name": "MQ_SERIALIZABLE_PACKAGES",
+                                        "value": "${MQ_SERIALIZABLE_PACKAGES}"
+                                    },
+                                    {
+                                        "name": "AMQ_MESH_DISCOVERY_TYPE",
+                                        "value": "${AMQ_MESH_DISCOVERY_TYPE}"
+                                    },
+                                    {
+                                        "name": "AMQ_MESH_SERVICE_NAME",
+                                        "value": "${APPLICATION_NAME}-amq-tcp"
+                                    },
+                                    {
+                                        "name": "AMQ_MESH_SERVICE_NAMESPACE",
+                                        "valueFrom": {
+                                            "fieldRef": {
+                                                "fieldPath": "metadata.namespace"
+                                            }
+                                        }
                                     },
                                     },
                                     {
                                     {
-                                        "name": "AMQ_ADMIN_PASSWORD",
-                                        "value": "${AMQ_ADMIN_PASSWORD}"
+                                        "name": "AMQ_STORAGE_USAGE_LIMIT",
+                                        "value": "${AMQ_STORAGE_USAGE_LIMIT}"
                                     }
                                     }
                                 ]
                                 ]
                             }
                             }

+ 15 - 5
roles/openshift_examples/files/examples/v1.2/xpaas-templates/eap64-basic-s2i.json

@@ -6,13 +6,13 @@
             "iconClass": "icon-jboss",
             "iconClass": "icon-jboss",
             "description": "Application template for EAP 6 applications built using S2I.",
             "description": "Application template for EAP 6 applications built using S2I.",
             "tags": "eap,javaee,java,jboss,xpaas",
             "tags": "eap,javaee,java,jboss,xpaas",
-            "version": "1.2.0"
+            "version": "1.3.2"
         },
         },
         "name": "eap64-basic-s2i"
         "name": "eap64-basic-s2i"
     },
     },
     "labels": {
     "labels": {
         "template": "eap64-basic-s2i",
         "template": "eap64-basic-s2i",
-        "xpaas": "1.2.0"
+        "xpaas": "1.3.2"
     },
     },
     "parameters": [
     "parameters": [
         {
         {
@@ -90,6 +90,12 @@
             "from": "[a-zA-Z0-9]{8}",
             "from": "[a-zA-Z0-9]{8}",
             "generate": "expression",
             "generate": "expression",
             "required": true
             "required": true
+        },
+        {
+            "description": "Controls whether exploded deployment content should be automatically deployed",
+            "name": "AUTO_DEPLOY_EXPLODED",
+            "value": "false",
+            "required": false
         }
         }
     ],
     ],
     "objects": [
     "objects": [
@@ -172,7 +178,7 @@
                         "from": {
                         "from": {
                             "kind": "ImageStreamTag",
                             "kind": "ImageStreamTag",
                             "namespace": "${IMAGE_STREAM_NAMESPACE}",
                             "namespace": "${IMAGE_STREAM_NAMESPACE}",
-                            "name": "jboss-eap64-openshift:1.2"
+                            "name": "jboss-eap64-openshift:1.4"
                         }
                         }
                     }
                     }
                 },
                 },
@@ -227,8 +233,8 @@
                                 "${APPLICATION_NAME}"
                                 "${APPLICATION_NAME}"
                             ],
                             ],
                             "from": {
                             "from": {
-                                "kind": "ImageStream",
-                                "name": "${APPLICATION_NAME}"
+                                "kind": "ImageStreamTag",
+                                "name": "${APPLICATION_NAME}:latest"
                             }
                             }
                         }
                         }
                     },
                     },
@@ -318,6 +324,10 @@
                                     {
                                     {
                                         "name": "JGROUPS_CLUSTER_PASSWORD",
                                         "name": "JGROUPS_CLUSTER_PASSWORD",
                                         "value": "${JGROUPS_CLUSTER_PASSWORD}"
                                         "value": "${JGROUPS_CLUSTER_PASSWORD}"
+                                    },
+                                    {
+                                        "name": "AUTO_DEPLOY_EXPLODED",
+                                        "value": "${AUTO_DEPLOY_EXPLODED}"
                                     }
                                     }
                                 ]
                                 ]
                             }
                             }

+ 32 - 6
roles/openshift_examples/files/examples/v1.2/xpaas-templates/eap64-https-s2i.json

@@ -6,13 +6,13 @@
             "iconClass": "icon-jboss",
             "iconClass": "icon-jboss",
             "description": "Application template for EAP 6 applications built using S2I.",
             "description": "Application template for EAP 6 applications built using S2I.",
             "tags": "eap,javaee,java,jboss,xpaas",
             "tags": "eap,javaee,java,jboss,xpaas",
-            "version": "1.2.0"
+            "version": "1.3.2"
         },
         },
         "name": "eap64-https-s2i"
         "name": "eap64-https-s2i"
     },
     },
     "labels": {
     "labels": {
         "template": "eap64-https-s2i",
         "template": "eap64-https-s2i",
-        "xpaas": "1.2.0"
+        "xpaas": "1.3.2"
     },
     },
     "parameters": [
     "parameters": [
         {
         {
@@ -64,6 +64,12 @@
             "required": false
             "required": false
         },
         },
         {
         {
+            "description": "The name of the service account to use for the deployment.  The service account should be configured to allow useage of the secret(s) specified by HTTPS_SECRET and JGROUPS_ENCRYPT_SECRET.",
+            "name": "SERVICE_ACCOUNT_NAME",
+            "value": "eap-service-account",
+            "required": true
+        },
+        {
             "description": "The name of the secret containing the keystore file",
             "description": "The name of the secret containing the keystore file",
             "name": "HTTPS_SECRET",
             "name": "HTTPS_SECRET",
             "value": "eap-app-secret",
             "value": "eap-app-secret",
@@ -76,6 +82,12 @@
             "required": false
             "required": false
         },
         },
         {
         {
+            "description": "The type of the keystore file (JKS or JCEKS)",
+            "name": "HTTPS_KEYSTORE_TYPE",
+            "value": "",
+            "required": false
+        },
+        {
             "description": "The name associated with the server certificate",
             "description": "The name associated with the server certificate",
             "name": "HTTPS_NAME",
             "name": "HTTPS_NAME",
             "value": "",
             "value": "",
@@ -144,6 +156,12 @@
             "from": "[a-zA-Z0-9]{8}",
             "from": "[a-zA-Z0-9]{8}",
             "generate": "expression",
             "generate": "expression",
             "required": true
             "required": true
+        },
+        {
+            "description": "Controls whether exploded deployment content should be automatically deployed",
+            "name": "AUTO_DEPLOY_EXPLODED",
+            "value": "false",
+            "required": false
         }
         }
     ],
     ],
     "objects": [
     "objects": [
@@ -273,7 +291,7 @@
                         "from": {
                         "from": {
                             "kind": "ImageStreamTag",
                             "kind": "ImageStreamTag",
                             "namespace": "${IMAGE_STREAM_NAMESPACE}",
                             "namespace": "${IMAGE_STREAM_NAMESPACE}",
-                            "name": "jboss-eap64-openshift:1.2"
+                            "name": "jboss-eap64-openshift:1.4"
                         }
                         }
                     }
                     }
                 },
                 },
@@ -328,8 +346,8 @@
                                 "${APPLICATION_NAME}"
                                 "${APPLICATION_NAME}"
                             ],
                             ],
                             "from": {
                             "from": {
-                                "kind": "ImageStream",
-                                "name": "${APPLICATION_NAME}"
+                                "kind": "ImageStreamTag",
+                                "name": "${APPLICATION_NAME}:latest"
                             }
                             }
                         }
                         }
                     },
                     },
@@ -350,7 +368,7 @@
                         }
                         }
                     },
                     },
                     "spec": {
                     "spec": {
-                        "serviceAccountName": "eap-service-account",
+                        "serviceAccountName": "${SERVICE_ACCOUNT_NAME}",
                         "terminationGracePeriodSeconds": 60,
                         "terminationGracePeriodSeconds": 60,
                         "containers": [
                         "containers": [
                             {
                             {
@@ -431,6 +449,10 @@
                                         "value": "${HTTPS_KEYSTORE}"
                                         "value": "${HTTPS_KEYSTORE}"
                                     },
                                     },
                                     {
                                     {
+                                        "name": "HTTPS_KEYSTORE_TYPE",
+                                        "value": "${HTTPS_KEYSTORE_TYPE}"
+                                    },
+                                    {
                                         "name": "HTTPS_NAME",
                                         "name": "HTTPS_NAME",
                                         "value": "${HTTPS_NAME}"
                                         "value": "${HTTPS_NAME}"
                                     },
                                     },
@@ -473,6 +495,10 @@
                                     {
                                     {
                                         "name": "JGROUPS_CLUSTER_PASSWORD",
                                         "name": "JGROUPS_CLUSTER_PASSWORD",
                                         "value": "${JGROUPS_CLUSTER_PASSWORD}"
                                         "value": "${JGROUPS_CLUSTER_PASSWORD}"
+                                    },
+                                    {
+                                        "name": "AUTO_DEPLOY_EXPLODED",
+                                        "value": "${AUTO_DEPLOY_EXPLODED}"
                                     }
                                     }
                                 ]
                                 ]
                             }
                             }

+ 32 - 6
roles/openshift_examples/files/examples/v1.2/xpaas-templates/eap64-mongodb-persistent-s2i.json

@@ -6,13 +6,13 @@
             "description": "Application template for EAP 6 MongoDB applications with persistent storage built using S2I.",
             "description": "Application template for EAP 6 MongoDB applications with persistent storage built using S2I.",
             "iconClass": "icon-jboss",
             "iconClass": "icon-jboss",
             "tags": "eap,mongodb,javaee,java,database,jboss,xpaas",
             "tags": "eap,mongodb,javaee,java,database,jboss,xpaas",
-            "version": "1.2.0"
+            "version": "1.3.2"
         },
         },
         "name": "eap64-mongodb-persistent-s2i"
         "name": "eap64-mongodb-persistent-s2i"
     },
     },
     "labels": {
     "labels": {
         "template": "eap64-mongodb-persistent-s2i",
         "template": "eap64-mongodb-persistent-s2i",
-        "xpaas": "1.2.0"
+        "xpaas": "1.3.2"
     },
     },
     "parameters": [
     "parameters": [
         {
         {
@@ -82,6 +82,12 @@
             "required": false
             "required": false
         },
         },
         {
         {
+            "description": "The name of the service account to use for the deployment.  The service account should be configured to allow useage of the secret(s) specified by HTTPS_SECRET and JGROUPS_ENCRYPT_SECRET.",
+            "name": "SERVICE_ACCOUNT_NAME",
+            "value": "eap-service-account",
+            "required": true
+        },
+        {
             "description": "The name of the secret containing the keystore file",
             "description": "The name of the secret containing the keystore file",
             "name": "HTTPS_SECRET",
             "name": "HTTPS_SECRET",
             "value": "eap-app-secret",
             "value": "eap-app-secret",
@@ -94,6 +100,12 @@
             "required": false
             "required": false
         },
         },
         {
         {
+            "description": "The type of the keystore file (JKS or JCEKS)",
+            "name": "HTTPS_KEYSTORE_TYPE",
+            "value": "",
+            "required": false
+        },
+        {
             "description": "The name associated with the server certificate",
             "description": "The name associated with the server certificate",
             "name": "HTTPS_NAME",
             "name": "HTTPS_NAME",
             "value": "",
             "value": "",
@@ -213,6 +225,12 @@
             "from": "[a-zA-Z0-9]{8}",
             "from": "[a-zA-Z0-9]{8}",
             "generate": "expression",
             "generate": "expression",
             "required": true
             "required": true
+        },
+        {
+            "description": "Controls whether exploded deployment content should be automatically deployed",
+            "name": "AUTO_DEPLOY_EXPLODED",
+            "value": "false",
+            "required": false
         }
         }
     ],
     ],
     "objects": [
     "objects": [
@@ -366,7 +384,7 @@
                         "from": {
                         "from": {
                             "kind": "ImageStreamTag",
                             "kind": "ImageStreamTag",
                             "namespace": "${IMAGE_STREAM_NAMESPACE}",
                             "namespace": "${IMAGE_STREAM_NAMESPACE}",
-                            "name": "jboss-eap64-openshift:1.2"
+                            "name": "jboss-eap64-openshift:1.4"
                         }
                         }
                     }
                     }
                 },
                 },
@@ -421,8 +439,8 @@
                                 "${APPLICATION_NAME}"
                                 "${APPLICATION_NAME}"
                             ],
                             ],
                             "from": {
                             "from": {
-                                "kind": "ImageStream",
-                                "name": "${APPLICATION_NAME}"
+                                "kind": "ImageStreamTag",
+                                "name": "${APPLICATION_NAME}:latest"
                             }
                             }
                         }
                         }
                     },
                     },
@@ -443,7 +461,7 @@
                         }
                         }
                     },
                     },
                     "spec": {
                     "spec": {
-                        "serviceAccountName": "eap-service-account",
+                        "serviceAccountName": "${SERVICE_ACCOUNT_NAME}",
                         "terminationGracePeriodSeconds": 60,
                         "terminationGracePeriodSeconds": 60,
                         "containers": [
                         "containers": [
                             {
                             {
@@ -560,6 +578,10 @@
                                         "value": "${HTTPS_KEYSTORE}"
                                         "value": "${HTTPS_KEYSTORE}"
                                     },
                                     },
                                     {
                                     {
+                                        "name": "HTTPS_KEYSTORE_TYPE",
+                                        "value": "${HTTPS_KEYSTORE_TYPE}"
+                                    },
+                                    {
                                         "name": "HTTPS_NAME",
                                         "name": "HTTPS_NAME",
                                         "value": "${HTTPS_NAME}"
                                         "value": "${HTTPS_NAME}"
                                     },
                                     },
@@ -602,6 +624,10 @@
                                     {
                                     {
                                         "name": "JGROUPS_CLUSTER_PASSWORD",
                                         "name": "JGROUPS_CLUSTER_PASSWORD",
                                         "value": "${JGROUPS_CLUSTER_PASSWORD}"
                                         "value": "${JGROUPS_CLUSTER_PASSWORD}"
+                                    },
+                                    {
+                                        "name": "AUTO_DEPLOY_EXPLODED",
+                                        "value": "${AUTO_DEPLOY_EXPLODED}"
                                     }
                                     }
                                 ]
                                 ]
                             }
                             }

+ 32 - 6
roles/openshift_examples/files/examples/v1.2/xpaas-templates/eap64-mongodb-s2i.json

@@ -6,13 +6,13 @@
             "description": "Application template for EAP 6 MongoDB applications built using S2I.",
             "description": "Application template for EAP 6 MongoDB applications built using S2I.",
             "iconClass": "icon-jboss",
             "iconClass": "icon-jboss",
             "tags": "eap,mongodb,javaee,java,database,jboss,xpaas",
             "tags": "eap,mongodb,javaee,java,database,jboss,xpaas",
-            "version": "1.2.0"
+            "version": "1.3.2"
         },
         },
         "name": "eap64-mongodb-s2i"
         "name": "eap64-mongodb-s2i"
     },
     },
     "labels": {
     "labels": {
         "template": "eap64-mongodb-s2i",
         "template": "eap64-mongodb-s2i",
-        "xpaas": "1.2.0"
+        "xpaas": "1.3.2"
     },
     },
     "parameters": [
     "parameters": [
         {
         {
@@ -76,6 +76,12 @@
             "required": false
             "required": false
         },
         },
         {
         {
+            "description": "The name of the service account to use for the deployment.  The service account should be configured to allow useage of the secret(s) specified by HTTPS_SECRET and JGROUPS_ENCRYPT_SECRET.",
+            "name": "SERVICE_ACCOUNT_NAME",
+            "value": "eap-service-account",
+            "required": true
+        },
+        {
             "description": "The name of the secret containing the keystore file",
             "description": "The name of the secret containing the keystore file",
             "name": "HTTPS_SECRET",
             "name": "HTTPS_SECRET",
             "value": "eap-app-secret",
             "value": "eap-app-secret",
@@ -88,6 +94,12 @@
             "required": false
             "required": false
         },
         },
         {
         {
+            "description": "The type of the keystore file (JKS or JCEKS)",
+            "name": "HTTPS_KEYSTORE_TYPE",
+            "value": "",
+            "required": false
+        },
+        {
             "description": "The name associated with the server certificate",
             "description": "The name associated with the server certificate",
             "name": "HTTPS_NAME",
             "name": "HTTPS_NAME",
             "value": "",
             "value": "",
@@ -207,6 +219,12 @@
             "from": "[a-zA-Z0-9]{8}",
             "from": "[a-zA-Z0-9]{8}",
             "generate": "expression",
             "generate": "expression",
             "required": true
             "required": true
+        },
+        {
+            "description": "Controls whether exploded deployment content should be automatically deployed",
+            "name": "AUTO_DEPLOY_EXPLODED",
+            "value": "false",
+            "required": false
         }
         }
     ],
     ],
     "objects": [
     "objects": [
@@ -360,7 +378,7 @@
                         "from": {
                         "from": {
                             "kind": "ImageStreamTag",
                             "kind": "ImageStreamTag",
                             "namespace": "${IMAGE_STREAM_NAMESPACE}",
                             "namespace": "${IMAGE_STREAM_NAMESPACE}",
-                            "name": "jboss-eap64-openshift:1.2"
+                            "name": "jboss-eap64-openshift:1.4"
                         }
                         }
                     }
                     }
                 },
                 },
@@ -415,8 +433,8 @@
                                 "${APPLICATION_NAME}"
                                 "${APPLICATION_NAME}"
                             ],
                             ],
                             "from": {
                             "from": {
-                                "kind": "ImageStream",
-                                "name": "${APPLICATION_NAME}"
+                                "kind": "ImageStreamTag",
+                                "name": "${APPLICATION_NAME}:latest"
                             }
                             }
                         }
                         }
                     },
                     },
@@ -437,7 +455,7 @@
                         }
                         }
                     },
                     },
                     "spec": {
                     "spec": {
-                        "serviceAccountName": "eap-service-account",
+                        "serviceAccountName": "${SERVICE_ACCOUNT_NAME}",
                         "terminationGracePeriodSeconds": 60,
                         "terminationGracePeriodSeconds": 60,
                         "containers": [
                         "containers": [
                             {
                             {
@@ -554,6 +572,10 @@
                                         "value": "${HTTPS_KEYSTORE}"
                                         "value": "${HTTPS_KEYSTORE}"
                                     },
                                     },
                                     {
                                     {
+                                        "name": "HTTPS_KEYSTORE_TYPE",
+                                        "value": "${HTTPS_KEYSTORE_TYPE}"
+                                    },
+                                    {
                                         "name": "HTTPS_NAME",
                                         "name": "HTTPS_NAME",
                                         "value": "${HTTPS_NAME}"
                                         "value": "${HTTPS_NAME}"
                                     },
                                     },
@@ -596,6 +618,10 @@
                                     {
                                     {
                                         "name": "JGROUPS_CLUSTER_PASSWORD",
                                         "name": "JGROUPS_CLUSTER_PASSWORD",
                                         "value": "${JGROUPS_CLUSTER_PASSWORD}"
                                         "value": "${JGROUPS_CLUSTER_PASSWORD}"
+                                    },
+                                    {
+                                        "name": "AUTO_DEPLOY_EXPLODED",
+                                        "value": "${AUTO_DEPLOY_EXPLODED}"
                                     }
                                     }
                                 ]
                                 ]
                             }
                             }

+ 36 - 6
roles/openshift_examples/files/examples/v1.2/xpaas-templates/eap64-mysql-persistent-s2i.json

@@ -6,13 +6,13 @@
             "description": "Application template for EAP 6 MySQL applications with persistent storage built using S2I.",
             "description": "Application template for EAP 6 MySQL applications with persistent storage built using S2I.",
             "iconClass": "icon-jboss",
             "iconClass": "icon-jboss",
             "tags": "eap,mysql,javaee,java,database,jboss,xpaas",
             "tags": "eap,mysql,javaee,java,database,jboss,xpaas",
-            "version": "1.2.0"
+            "version": "1.3.2"
         },
         },
         "name": "eap64-mysql-persistent-s2i"
         "name": "eap64-mysql-persistent-s2i"
     },
     },
     "labels": {
     "labels": {
         "template": "eap64-mysql-persistent-s2i",
         "template": "eap64-mysql-persistent-s2i",
-        "xpaas": "1.2.0"
+        "xpaas": "1.3.2"
     },
     },
     "parameters": [
     "parameters": [
         {
         {
@@ -82,6 +82,12 @@
             "required": false
             "required": false
         },
         },
         {
         {
+            "description": "The name of the service account to use for the deployment.  The service account should be configured to allow useage of the secret(s) specified by HTTPS_SECRET and JGROUPS_ENCRYPT_SECRET.",
+            "name": "SERVICE_ACCOUNT_NAME",
+            "value": "eap-service-account",
+            "required": true
+        },
+        {
             "description": "The name of the secret containing the keystore file",
             "description": "The name of the secret containing the keystore file",
             "name": "HTTPS_SECRET",
             "name": "HTTPS_SECRET",
             "value": "eap-app-secret",
             "value": "eap-app-secret",
@@ -94,6 +100,12 @@
             "required": false
             "required": false
         },
         },
         {
         {
+            "description": "The type of the keystore file (JKS or JCEKS)",
+            "name": "HTTPS_KEYSTORE_TYPE",
+            "value": "",
+            "required": false
+        },
+        {
             "description": "The name associated with the server certificate",
             "description": "The name associated with the server certificate",
             "name": "HTTPS_NAME",
             "name": "HTTPS_NAME",
             "value": "",
             "value": "",
@@ -216,6 +228,12 @@
             "from": "[a-zA-Z0-9]{8}",
             "from": "[a-zA-Z0-9]{8}",
             "generate": "expression",
             "generate": "expression",
             "required": true
             "required": true
+        },
+        {
+            "description": "Controls whether exploded deployment content should be automatically deployed",
+            "name": "AUTO_DEPLOY_EXPLODED",
+            "value": "false",
+            "required": false
         }
         }
     ],
     ],
     "objects": [
     "objects": [
@@ -369,7 +387,7 @@
                         "from": {
                         "from": {
                             "kind": "ImageStreamTag",
                             "kind": "ImageStreamTag",
                             "namespace": "${IMAGE_STREAM_NAMESPACE}",
                             "namespace": "${IMAGE_STREAM_NAMESPACE}",
-                            "name": "jboss-eap64-openshift:1.2"
+                            "name": "jboss-eap64-openshift:1.4"
                         }
                         }
                     }
                     }
                 },
                 },
@@ -424,8 +442,8 @@
                                 "${APPLICATION_NAME}"
                                 "${APPLICATION_NAME}"
                             ],
                             ],
                             "from": {
                             "from": {
-                                "kind": "ImageStream",
-                                "name": "${APPLICATION_NAME}"
+                                "kind": "ImageStreamTag",
+                                "name": "${APPLICATION_NAME}:latest"
                             }
                             }
                         }
                         }
                     },
                     },
@@ -446,7 +464,7 @@
                         }
                         }
                     },
                     },
                     "spec": {
                     "spec": {
-                        "serviceAccountName": "eap-service-account",
+                        "serviceAccountName": "${SERVICE_ACCOUNT_NAME}",
                         "terminationGracePeriodSeconds": 60,
                         "terminationGracePeriodSeconds": 60,
                         "containers": [
                         "containers": [
                             {
                             {
@@ -563,6 +581,10 @@
                                         "value": "${HTTPS_KEYSTORE}"
                                         "value": "${HTTPS_KEYSTORE}"
                                     },
                                     },
                                     {
                                     {
+                                        "name": "HTTPS_KEYSTORE_TYPE",
+                                        "value": "${HTTPS_KEYSTORE_TYPE}"
+                                    },
+                                    {
                                         "name": "HTTPS_NAME",
                                         "name": "HTTPS_NAME",
                                         "value": "${HTTPS_NAME}"
                                         "value": "${HTTPS_NAME}"
                                     },
                                     },
@@ -605,6 +627,14 @@
                                     {
                                     {
                                         "name": "JGROUPS_CLUSTER_PASSWORD",
                                         "name": "JGROUPS_CLUSTER_PASSWORD",
                                         "value": "${JGROUPS_CLUSTER_PASSWORD}"
                                         "value": "${JGROUPS_CLUSTER_PASSWORD}"
+                                    },
+                                    {
+                                        "name": "TIMER_SERVICE_DATA_STORE",
+                                        "value": "${APPLICATION_NAME}-mysql"
+                                    },
+                                    {
+                                        "name": "AUTO_DEPLOY_EXPLODED",
+                                        "value": "${AUTO_DEPLOY_EXPLODED}"
                                     }
                                     }
                                 ]
                                 ]
                             }
                             }

+ 36 - 6
roles/openshift_examples/files/examples/v1.2/xpaas-templates/eap64-mysql-s2i.json

@@ -6,13 +6,13 @@
             "description": "Application template for EAP 6 MySQL applications built using S2I.",
             "description": "Application template for EAP 6 MySQL applications built using S2I.",
             "iconClass": "icon-jboss",
             "iconClass": "icon-jboss",
             "tags": "eap,mysql,javaee,java,database,jboss,xpaas",
             "tags": "eap,mysql,javaee,java,database,jboss,xpaas",
-            "version": "1.2.0"
+            "version": "1.3.2"
         },
         },
         "name": "eap64-mysql-s2i"
         "name": "eap64-mysql-s2i"
     },
     },
     "labels": {
     "labels": {
         "template": "eap64-mysql-s2i",
         "template": "eap64-mysql-s2i",
-        "xpaas": "1.2.0"
+        "xpaas": "1.3.2"
     },
     },
     "parameters": [
     "parameters": [
         {
         {
@@ -76,6 +76,12 @@
             "required": false
             "required": false
         },
         },
         {
         {
+            "description": "The name of the service account to use for the deployment.  The service account should be configured to allow useage of the secret(s) specified by HTTPS_SECRET and JGROUPS_ENCRYPT_SECRET.",
+            "name": "SERVICE_ACCOUNT_NAME",
+            "value": "eap-service-account",
+            "required": true
+        },
+        {
             "description": "The name of the secret containing the keystore file",
             "description": "The name of the secret containing the keystore file",
             "name": "HTTPS_SECRET",
             "name": "HTTPS_SECRET",
             "value": "eap-app-secret",
             "value": "eap-app-secret",
@@ -88,6 +94,12 @@
             "required": false
             "required": false
         },
         },
         {
         {
+            "description": "The type of the keystore file (JKS or JCEKS)",
+            "name": "HTTPS_KEYSTORE_TYPE",
+            "value": "",
+            "required": false
+        },
+        {
             "description": "The name associated with the server certificate",
             "description": "The name associated with the server certificate",
             "name": "HTTPS_NAME",
             "name": "HTTPS_NAME",
             "value": "",
             "value": "",
@@ -210,6 +222,12 @@
             "from": "[a-zA-Z0-9]{8}",
             "from": "[a-zA-Z0-9]{8}",
             "generate": "expression",
             "generate": "expression",
             "required": true
             "required": true
+        },
+        {
+            "description": "Controls whether exploded deployment content should be automatically deployed",
+            "name": "AUTO_DEPLOY_EXPLODED",
+            "value": "false",
+            "required": false
         }
         }
     ],
     ],
     "objects": [
     "objects": [
@@ -363,7 +381,7 @@
                         "from": {
                         "from": {
                             "kind": "ImageStreamTag",
                             "kind": "ImageStreamTag",
                             "namespace": "${IMAGE_STREAM_NAMESPACE}",
                             "namespace": "${IMAGE_STREAM_NAMESPACE}",
-                            "name": "jboss-eap64-openshift:1.2"
+                            "name": "jboss-eap64-openshift:1.4"
                         }
                         }
                     }
                     }
                 },
                 },
@@ -418,8 +436,8 @@
                                 "${APPLICATION_NAME}"
                                 "${APPLICATION_NAME}"
                             ],
                             ],
                             "from": {
                             "from": {
-                                "kind": "ImageStream",
-                                "name": "${APPLICATION_NAME}"
+                                "kind": "ImageStreamTag",
+                                "name": "${APPLICATION_NAME}:latest"
                             }
                             }
                         }
                         }
                     },
                     },
@@ -440,7 +458,7 @@
                         }
                         }
                     },
                     },
                     "spec": {
                     "spec": {
-                        "serviceAccountName": "eap-service-account",
+                        "serviceAccountName": "${SERVICE_ACCOUNT_NAME}",
                         "terminationGracePeriodSeconds": 60,
                         "terminationGracePeriodSeconds": 60,
                         "containers": [
                         "containers": [
                             {
                             {
@@ -557,6 +575,10 @@
                                         "value": "${HTTPS_KEYSTORE}"
                                         "value": "${HTTPS_KEYSTORE}"
                                     },
                                     },
                                     {
                                     {
+                                        "name": "HTTPS_KEYSTORE_TYPE",
+                                        "value": "${HTTPS_KEYSTORE_TYPE}"
+                                    },
+                                    {
                                         "name": "HTTPS_NAME",
                                         "name": "HTTPS_NAME",
                                         "value": "${HTTPS_NAME}"
                                         "value": "${HTTPS_NAME}"
                                     },
                                     },
@@ -599,6 +621,14 @@
                                     {
                                     {
                                         "name": "JGROUPS_CLUSTER_PASSWORD",
                                         "name": "JGROUPS_CLUSTER_PASSWORD",
                                         "value": "${JGROUPS_CLUSTER_PASSWORD}"
                                         "value": "${JGROUPS_CLUSTER_PASSWORD}"
+                                    },
+                                    {
+                                        "name": "TIMER_SERVICE_DATA_STORE",
+                                        "value": "${APPLICATION_NAME}-mysql"
+                                    },
+                                    {
+                                        "name": "AUTO_DEPLOY_EXPLODED",
+                                        "value": "${AUTO_DEPLOY_EXPLODED}"
                                     }
                                     }
                                 ]
                                 ]
                             }
                             }

+ 40 - 6
roles/openshift_examples/files/examples/v1.2/xpaas-templates/eap64-postgresql-persistent-s2i.json

@@ -6,13 +6,13 @@
             "description": "Application template for EAP 6 PostgreSQL applications with persistent storage built using S2I.",
             "description": "Application template for EAP 6 PostgreSQL applications with persistent storage built using S2I.",
             "iconClass": "icon-jboss",
             "iconClass": "icon-jboss",
             "tags": "eap,postgresql,javaee,java,database,jboss,xpaas",
             "tags": "eap,postgresql,javaee,java,database,jboss,xpaas",
-            "version": "1.2.0"
+            "version": "1.3.2"
         },
         },
         "name": "eap64-postgresql-persistent-s2i"
         "name": "eap64-postgresql-persistent-s2i"
     },
     },
     "labels": {
     "labels": {
         "template": "eap64-postgresql-persistent-s2i",
         "template": "eap64-postgresql-persistent-s2i",
-        "xpaas": "1.2.0"
+        "xpaas": "1.3.2"
     },
     },
     "parameters": [
     "parameters": [
         {
         {
@@ -82,6 +82,12 @@
             "required": false
             "required": false
         },
         },
         {
         {
+            "description": "The name of the service account to use for the deployment.  The service account should be configured to allow useage of the secret(s) specified by HTTPS_SECRET and JGROUPS_ENCRYPT_SECRET.",
+            "name": "SERVICE_ACCOUNT_NAME",
+            "value": "eap-service-account",
+            "required": true
+        },
+        {
             "description": "The name of the secret containing the keystore file",
             "description": "The name of the secret containing the keystore file",
             "name": "HTTPS_SECRET",
             "name": "HTTPS_SECRET",
             "value": "eap-app-secret",
             "value": "eap-app-secret",
@@ -94,6 +100,12 @@
             "required": false
             "required": false
         },
         },
         {
         {
+            "description": "The type of the keystore file (JKS or JCEKS)",
+            "name": "HTTPS_KEYSTORE_TYPE",
+            "value": "",
+            "required": false
+        },
+        {
             "description": "The name associated with the server certificate",
             "description": "The name associated with the server certificate",
             "name": "HTTPS_NAME",
             "name": "HTTPS_NAME",
             "value": "",
             "value": "",
@@ -201,6 +213,12 @@
             "from": "[a-zA-Z0-9]{8}",
             "from": "[a-zA-Z0-9]{8}",
             "generate": "expression",
             "generate": "expression",
             "required": true
             "required": true
+        },
+        {
+            "description": "Controls whether exploded deployment content should be automatically deployed",
+            "name": "AUTO_DEPLOY_EXPLODED",
+            "value": "false",
+            "required": false
         }
         }
     ],
     ],
     "objects": [
     "objects": [
@@ -354,7 +372,7 @@
                         "from": {
                         "from": {
                             "kind": "ImageStreamTag",
                             "kind": "ImageStreamTag",
                             "namespace": "${IMAGE_STREAM_NAMESPACE}",
                             "namespace": "${IMAGE_STREAM_NAMESPACE}",
-                            "name": "jboss-eap64-openshift:1.2"
+                            "name": "jboss-eap64-openshift:1.4"
                         }
                         }
                     }
                     }
                 },
                 },
@@ -409,8 +427,8 @@
                                 "${APPLICATION_NAME}"
                                 "${APPLICATION_NAME}"
                             ],
                             ],
                             "from": {
                             "from": {
-                                "kind": "ImageStream",
-                                "name": "${APPLICATION_NAME}"
+                                "kind": "ImageStreamTag",
+                                "name": "${APPLICATION_NAME}:latest"
                             }
                             }
                         }
                         }
                     },
                     },
@@ -431,7 +449,7 @@
                         }
                         }
                     },
                     },
                     "spec": {
                     "spec": {
-                        "serviceAccountName": "eap-service-account",
+                        "serviceAccountName": "${SERVICE_ACCOUNT_NAME}",
                         "terminationGracePeriodSeconds": 60,
                         "terminationGracePeriodSeconds": 60,
                         "containers": [
                         "containers": [
                             {
                             {
@@ -548,6 +566,10 @@
                                         "value": "${HTTPS_KEYSTORE}"
                                         "value": "${HTTPS_KEYSTORE}"
                                     },
                                     },
                                     {
                                     {
+                                        "name": "HTTPS_KEYSTORE_TYPE",
+                                        "value": "${HTTPS_KEYSTORE_TYPE}"
+                                    },
+                                    {
                                         "name": "HTTPS_NAME",
                                         "name": "HTTPS_NAME",
                                         "value": "${HTTPS_NAME}"
                                         "value": "${HTTPS_NAME}"
                                     },
                                     },
@@ -590,6 +612,14 @@
                                     {
                                     {
                                         "name": "JGROUPS_CLUSTER_PASSWORD",
                                         "name": "JGROUPS_CLUSTER_PASSWORD",
                                         "value": "${JGROUPS_CLUSTER_PASSWORD}"
                                         "value": "${JGROUPS_CLUSTER_PASSWORD}"
+                                    },
+                                    {
+                                        "name": "TIMER_SERVICE_DATA_STORE",
+                                        "value": "${APPLICATION_NAME}-postgresql"
+                                    },
+                                    {
+                                        "name": "AUTO_DEPLOY_EXPLODED",
+                                        "value": "${AUTO_DEPLOY_EXPLODED}"
                                     }
                                     }
                                 ]
                                 ]
                             }
                             }
@@ -693,6 +723,10 @@
                                         "value": "${POSTGRESQL_MAX_CONNECTIONS}"
                                         "value": "${POSTGRESQL_MAX_CONNECTIONS}"
                                     },
                                     },
                                     {
                                     {
+                                        "name": "POSTGRESQL_MAX_PREPARED_TRANSACTIONS",
+                                        "value": "${POSTGRESQL_MAX_CONNECTIONS}"
+                                    },
+                                    {
                                         "name": "POSTGRESQL_SHARED_BUFFERS",
                                         "name": "POSTGRESQL_SHARED_BUFFERS",
                                         "value": "${POSTGRESQL_SHARED_BUFFERS}"
                                         "value": "${POSTGRESQL_SHARED_BUFFERS}"
                                     }
                                     }

+ 40 - 6
roles/openshift_examples/files/examples/v1.2/xpaas-templates/eap64-postgresql-s2i.json

@@ -6,13 +6,13 @@
             "description": "Application template for EAP 6 PostgreSQL applications built using S2I.",
             "description": "Application template for EAP 6 PostgreSQL applications built using S2I.",
             "iconClass": "icon-jboss",
             "iconClass": "icon-jboss",
             "tags": "eap,postgresql,javaee,java,database,jboss,xpaas",
             "tags": "eap,postgresql,javaee,java,database,jboss,xpaas",
-            "version": "1.2.0"
+            "version": "1.3.2"
         },
         },
         "name": "eap64-postgresql-s2i"
         "name": "eap64-postgresql-s2i"
     },
     },
     "labels": {
     "labels": {
         "template": "eap64-postgresql-s2i",
         "template": "eap64-postgresql-s2i",
-        "xpaas": "1.2.0"
+        "xpaas": "1.3.2"
     },
     },
     "parameters": [
     "parameters": [
         {
         {
@@ -76,6 +76,12 @@
             "required": false
             "required": false
         },
         },
         {
         {
+            "description": "The name of the service account to use for the deployment.  The service account should be configured to allow useage of the secret(s) specified by HTTPS_SECRET and JGROUPS_ENCRYPT_SECRET.",
+            "name": "SERVICE_ACCOUNT_NAME",
+            "value": "eap-service-account",
+            "required": true
+        },
+        {
             "description": "The name of the secret containing the keystore file",
             "description": "The name of the secret containing the keystore file",
             "name": "HTTPS_SECRET",
             "name": "HTTPS_SECRET",
             "value": "eap-app-secret",
             "value": "eap-app-secret",
@@ -88,6 +94,12 @@
             "required": false
             "required": false
         },
         },
         {
         {
+            "description": "The type of the keystore file (JKS or JCEKS)",
+            "name": "HTTPS_KEYSTORE_TYPE",
+            "value": "",
+            "required": false
+        },
+        {
             "description": "The name associated with the server certificate",
             "description": "The name associated with the server certificate",
             "name": "HTTPS_NAME",
             "name": "HTTPS_NAME",
             "value": "",
             "value": "",
@@ -195,6 +207,12 @@
             "from": "[a-zA-Z0-9]{8}",
             "from": "[a-zA-Z0-9]{8}",
             "generate": "expression",
             "generate": "expression",
             "required": true
             "required": true
+        },
+        {
+            "description": "Controls whether exploded deployment content should be automatically deployed",
+            "name": "AUTO_DEPLOY_EXPLODED",
+            "value": "false",
+            "required": false
         }
         }
     ],
     ],
     "objects": [
     "objects": [
@@ -348,7 +366,7 @@
                         "from": {
                         "from": {
                             "kind": "ImageStreamTag",
                             "kind": "ImageStreamTag",
                             "namespace": "${IMAGE_STREAM_NAMESPACE}",
                             "namespace": "${IMAGE_STREAM_NAMESPACE}",
-                            "name": "jboss-eap64-openshift:1.2"
+                            "name": "jboss-eap64-openshift:1.4"
                         }
                         }
                     }
                     }
                 },
                 },
@@ -403,8 +421,8 @@
                                 "${APPLICATION_NAME}"
                                 "${APPLICATION_NAME}"
                             ],
                             ],
                             "from": {
                             "from": {
-                                "kind": "ImageStream",
-                                "name": "${APPLICATION_NAME}"
+                                "kind": "ImageStreamTag",
+                                "name": "${APPLICATION_NAME}:latest"
                             }
                             }
                         }
                         }
                     },
                     },
@@ -425,7 +443,7 @@
                         }
                         }
                     },
                     },
                     "spec": {
                     "spec": {
-                        "serviceAccountName": "eap-service-account",
+                        "serviceAccountName": "${SERVICE_ACCOUNT_NAME}",
                         "terminationGracePeriodSeconds": 60,
                         "terminationGracePeriodSeconds": 60,
                         "containers": [
                         "containers": [
                             {
                             {
@@ -542,6 +560,10 @@
                                         "value": "${HTTPS_KEYSTORE}"
                                         "value": "${HTTPS_KEYSTORE}"
                                     },
                                     },
                                     {
                                     {
+                                        "name": "HTTPS_KEYSTORE_TYPE",
+                                        "value": "${HTTPS_KEYSTORE_TYPE}"
+                                    },
+                                    {
                                         "name": "HTTPS_NAME",
                                         "name": "HTTPS_NAME",
                                         "value": "${HTTPS_NAME}"
                                         "value": "${HTTPS_NAME}"
                                     },
                                     },
@@ -584,6 +606,14 @@
                                     {
                                     {
                                         "name": "JGROUPS_CLUSTER_PASSWORD",
                                         "name": "JGROUPS_CLUSTER_PASSWORD",
                                         "value": "${JGROUPS_CLUSTER_PASSWORD}"
                                         "value": "${JGROUPS_CLUSTER_PASSWORD}"
+                                    },
+                                    {
+                                        "name": "TIMER_SERVICE_DATA_STORE",
+                                        "value": "${APPLICATION_NAME}-postgresql"
+                                    },
+                                    {
+                                        "name": "AUTO_DEPLOY_EXPLODED",
+                                        "value": "${AUTO_DEPLOY_EXPLODED}"
                                     }
                                     }
                                 ]
                                 ]
                             }
                             }
@@ -681,6 +711,10 @@
                                         "value": "${POSTGRESQL_MAX_CONNECTIONS}"
                                         "value": "${POSTGRESQL_MAX_CONNECTIONS}"
                                     },
                                     },
                                     {
                                     {
+                                        "name": "POSTGRESQL_MAX_PREPARED_TRANSACTIONS",
+                                        "value": "${POSTGRESQL_MAX_CONNECTIONS}"
+                                    },
+                                    {
                                         "name": "POSTGRESQL_SHARED_BUFFERS",
                                         "name": "POSTGRESQL_SHARED_BUFFERS",
                                         "value": "${POSTGRESQL_SHARED_BUFFERS}"
                                         "value": "${POSTGRESQL_SHARED_BUFFERS}"
                                     }
                                     }

+ 143 - 50
roles/openshift_examples/files/examples/v1.2/xpaas-templates/eap64-sso-s2i.json

@@ -6,13 +6,13 @@
             "iconClass" : "icon-jboss",
             "iconClass" : "icon-jboss",
             "description": "Application template for EAP 6 applications built using S2I, enabled for SSO.",
             "description": "Application template for EAP 6 applications built using S2I, enabled for SSO.",
             "tags": "eap,javaee,java,jboss,xpaas,sso,keycloak",
             "tags": "eap,javaee,java,jboss,xpaas,sso,keycloak",
-            "version": "1.3.0"
+            "version": "1.3.2"
         },
         },
         "name": "eap64-sso-s2i"
         "name": "eap64-sso-s2i"
     },
     },
     "labels": {
     "labels": {
         "template": "eap64-sso-s2i",
         "template": "eap64-sso-s2i",
-        "xpaas": "1.3.0"
+        "xpaas": "1.3.2"
     },
     },
     "parameters": [
     "parameters": [
         {
         {
@@ -22,27 +22,27 @@
             "required": true
             "required": true
         },
         },
         {
         {
-            "description": "Custom hostname for http service route.  Leave blank for default hostname, e.g.: <application-name>-<project>.<default-domain-suffix>",
+            "description": "Hostname for http service route (e.g. eap-app-myproject.example.com).  Required for SSO-enabled applications.  This is added to the white list of redirects in the SSO server.",
             "name": "HOSTNAME_HTTP",
             "name": "HOSTNAME_HTTP",
             "value": "",
             "value": "",
-            "required": false
+            "required": true
         },
         },
         {
         {
-            "description": "Custom hostname for https service route.  Leave blank for default hostname, e.g.: secure-<application-name>-<project>.<default-domain-suffix>",
+            "description": "Hostname for https service route (e.g. secure-eap-app-myproject.example.com).  Required for SSO-enabled applications.  This is added to the white list of redirects in the SSO server.",
             "name": "HOSTNAME_HTTPS",
             "name": "HOSTNAME_HTTPS",
             "value": "",
             "value": "",
-            "required": false
+            "required": true
         },
         },
         {
         {
             "description": "Git source URI for application",
             "description": "Git source URI for application",
             "name": "SOURCE_REPOSITORY_URL",
             "name": "SOURCE_REPOSITORY_URL",
-            "value": "https://github.com/keycloak/keycloak-examples",
+            "value": "https://github.com/redhat-developer/redhat-sso-quickstarts",
             "required": true
             "required": true
         },
         },
         {
         {
             "description": "Git branch/tag reference",
             "description": "Git branch/tag reference",
             "name": "SOURCE_REPOSITORY_REF",
             "name": "SOURCE_REPOSITORY_REF",
-            "value": "0.4-openshift",
+            "value": "7.0.x-ose",
             "required": false
             "required": false
         },
         },
         {
         {
@@ -64,6 +64,12 @@
             "required": false
             "required": false
         },
         },
         {
         {
+            "description": "The name of the service account to use for the deployment.  The service account should be configured to allow useage of the secret(s) specified by HTTPS_SECRET and JGROUPS_ENCRYPT_SECRET.",
+            "name": "SERVICE_ACCOUNT_NAME",
+            "value": "eap-service-account",
+            "required": true
+        },
+        {
             "description": "The name of the secret containing the keystore file",
             "description": "The name of the secret containing the keystore file",
             "name": "HTTPS_SECRET",
             "name": "HTTPS_SECRET",
             "value": "eap-app-secret",
             "value": "eap-app-secret",
@@ -76,15 +82,21 @@
             "required": false
             "required": false
         },
         },
         {
         {
-            "description": "The name associated with the server certificate",
+            "description": "The type of the keystore file (JKS or JCEKS)",
+            "name": "HTTPS_KEYSTORE_TYPE",
+            "value": "",
+            "required": false
+        },
+        {
+            "description": "The name associated with the server certificate (e.g. jboss)",
             "name": "HTTPS_NAME",
             "name": "HTTPS_NAME",
-            "value": "jboss",
+            "value": "",
             "required": false
             "required": false
         },
         },
         {
         {
-            "description": "The password for the keystore and certificate",
+            "description": "The password for the keystore and certificate (e.g. mykeystorepass)",
             "name": "HTTPS_PASSWORD",
             "name": "HTTPS_PASSWORD",
-            "value": "mykeystorepass",
+            "value": "",
             "required": false
             "required": false
         },
         },
         {
         {
@@ -127,15 +139,15 @@
             "required": false
             "required": false
         },
         },
         {
         {
-            "description": "The name associated with the server certificate",
+            "description": "The name associated with the server certificate (e.g. secret-key)",
             "name": "JGROUPS_ENCRYPT_NAME",
             "name": "JGROUPS_ENCRYPT_NAME",
-            "value": "secret-key",
+            "value": "",
             "required": false
             "required": false
         },
         },
         {
         {
-            "description": "The password for the keystore and certificate",
+            "description": "The password for the keystore and certificate (e.g. password)",
             "name": "JGROUPS_ENCRYPT_PASSWORD",
             "name": "JGROUPS_ENCRYPT_PASSWORD",
-            "value": "password",
+            "value": "",
             "required": false
             "required": false
         },
         },
         {
         {
@@ -146,31 +158,43 @@
             "required": true
             "required": true
         },
         },
         {
         {
-            "description": "SSO Location",
-            "name": "SSO_URI",
+            "description": "Controls whether exploded deployment content should be automatically deployed",
+            "name": "AUTO_DEPLOY_EXPLODED",
+            "value": "false",
+            "required": false
+        },
+        {
+            "description": "The URL for the SSO server (e.g. https://secure-sso-myproject.example.com/auth).  This is the URL through which the user will be redirected when a login or token is required by the application.",
+            "name": "SSO_URL",
+            "value": "",
+            "required": true
+        },
+        {
+            "description": "The URL for the interal SSO service, where secure-sso is the kubernetes service exposed by the SSO server.  This is used to create the application client(s) (see SSO_USERNAME).  This can also be the same as SSO_URL.",
+            "name": "SSO_SERVICE_URL",
             "value": "https://secure-sso:8443/auth",
             "value": "https://secure-sso:8443/auth",
             "required": false
             "required": false
         },
         },
         {
         {
-            "description": "SSO Realm",
+            "description": "The SSO realm to which the application client(s) should be associated (e.g. demo).",
             "name": "SSO_REALM",
             "name": "SSO_REALM",
-            "value": "demo",
-            "required": false
+            "value": "",
+            "required": true
         },
         },
         {
         {
-            "description": "SSO Username",
+            "description": "The username used to access the SSO service.  This is used to create the appliction client(s) within the specified SSO realm. This should match the SSO_SERVICE_USERNAME specified through one of the sso70-* templates.",
             "name": "SSO_USERNAME",
             "name": "SSO_USERNAME",
             "value": "",
             "value": "",
             "required": false
             "required": false
         },
         },
         {
         {
-            "description": "SSO Password",
+            "description": "The password for the SSO service user.",
             "name": "SSO_PASSWORD",
             "name": "SSO_PASSWORD",
             "value": "",
             "value": "",
             "required": false
             "required": false
         },
         },
         {
         {
-            "description": "SSO Public Key. Public key is recommended to be passed into the template to avoid man-in-the-middle security vulnerability",
+            "description": "SSO Public Key. Public key is recommended to be passed into the template to avoid man-in-the-middle security vulnerability.  This can be retrieved from the SSO server, for the specified realm.",
             "name": "SSO_PUBLIC_KEY",
             "name": "SSO_PUBLIC_KEY",
             "value": "",
             "value": "",
             "required": false
             "required": false
@@ -182,21 +206,9 @@
             "required": false
             "required": false
         },
         },
         {
         {
-            "description": "Routes",
-            "name": "APPLICATION_ROUTES",
-            "value": "",
-            "required": false
-        },
-        {
-            "description": "Artifacts",
+            "description": "List of directories from which archives will be copied into the deployment folder.  If unspecified, all archives in /target will be copied.",
             "name": "ARTIFACT_DIR",
             "name": "ARTIFACT_DIR",
-            "value": "app-jee/target,service-jaxrs/target,app-profile-jee/target,app-profile-jee-saml/target",
-            "required": false
-        },
-        {
-            "description": "maven",
-            "name": "MAVEN_ARGS_APPEND",
-            "value": "",
+            "value": "app-jee-jsp/target,service-jee-jaxrs/target,app-profile-jee-jsp/target,app-profile-saml-jee-jsp/target",
             "required": false
             "required": false
         },
         },
         {
         {
@@ -208,7 +220,7 @@
         {
         {
             "description": "The name of the keystore file within the secret",
             "description": "The name of the keystore file within the secret",
             "name": "SSO_SAML_KEYSTORE",
             "name": "SSO_SAML_KEYSTORE",
-            "value": "/etc/sso-saml-secret-volume/keystore.jks",
+            "value": "keystore.jks",
             "required": false
             "required": false
         },
         },
         {
         {
@@ -235,6 +247,36 @@
             "name": "SSO_ENABLE_CORS",
             "name": "SSO_ENABLE_CORS",
             "value": "false",
             "value": "false",
             "required": false
             "required": false
+        },
+        {
+            "description": "SSO logout page for SAML applications",
+            "name": "SSO_SAML_LOGOUT_PAGE",
+            "value": "/",
+            "required": false
+        },
+        {
+            "description": "If true SSL communication between EAP and the SSO Server will be insecure (i.e. certificate validation is disabled with curl)",
+            "name": "SSO_DISABLE_SSL_CERTIFICATE_VALIDATION",
+            "value": "true",
+            "required": false
+        },
+        {
+            "description": "The name of the truststore file within the secret (e.g. truststore.jks)",
+            "name": "SSO_TRUSTSTORE",
+            "value": "",
+            "required": false
+        },
+        {
+            "description": "The password for the truststore and certificate (e.g. mykeystorepass)",
+            "name": "SSO_TRUSTSTORE_PASSWORD",
+            "value": "",
+            "required": false
+        },
+        {
+            "description": "The name of the secret containing the truststore file (e.g. truststore-secret). Used for volume secretName",
+            "name": "SSO_TRUSTSTORE_SECRET",
+            "value": "eap-app-secret",
+            "required": false
         }
         }
    ],
    ],
     "objects": [
     "objects": [
@@ -364,7 +406,7 @@
                         "from": {
                         "from": {
                             "kind": "ImageStreamTag",
                             "kind": "ImageStreamTag",
                             "namespace": "${IMAGE_STREAM_NAMESPACE}",
                             "namespace": "${IMAGE_STREAM_NAMESPACE}",
-                            "name": "jboss-eap64-openshift:1.3"
+                            "name": "jboss-eap64-openshift:1.4"
                         },
                         },
                         "env": [
                         "env": [
                             {
                             {
@@ -373,7 +415,7 @@
                             },
                             },
                             {
                             {
                                 "name": "MAVEN_ARGS_APPEND",
                                 "name": "MAVEN_ARGS_APPEND",
-                                "value": "${MAVEN_ARGS_APPEND}"
+                                "value": ""
                             }
                             }
                         ]
                         ]
                     }
                     }
@@ -429,8 +471,8 @@
                                 "${APPLICATION_NAME}"
                                 "${APPLICATION_NAME}"
                             ],
                             ],
                             "from": {
                             "from": {
-                                "kind": "ImageStream",
-                                "name": "${APPLICATION_NAME}"
+                                "kind": "ImageStreamTag",
+                                "name": "${APPLICATION_NAME}:latest"
                             }
                             }
                         }
                         }
                     },
                     },
@@ -451,7 +493,7 @@
                         }
                         }
                     },
                     },
                     "spec": {
                     "spec": {
-                        "serviceAccountName": "eap-service-account",
+                        "serviceAccountName": "${SERVICE_ACCOUNT_NAME}",
                         "terminationGracePeriodSeconds": 60,
                         "terminationGracePeriodSeconds": 60,
                         "containers": [
                         "containers": [
                             {
                             {
@@ -473,6 +515,11 @@
                                         "name": "eap-jgroups-keystore-volume",
                                         "name": "eap-jgroups-keystore-volume",
                                         "mountPath": "/etc/jgroups-encrypt-secret-volume",
                                         "mountPath": "/etc/jgroups-encrypt-secret-volume",
                                         "readOnly": true
                                         "readOnly": true
+                                    },
+                                    {
+                                        "name": "sso-truststore-volume",
+                                        "mountPath": "/etc/sso-secret-volume",
+                                        "readOnly": true
                                     }
                                     }
                                 ],
                                 ],
                                 "livenessProbe": {
                                 "livenessProbe": {
@@ -529,6 +576,14 @@
                                         }
                                         }
                                     },
                                     },
                                     {
                                     {
+                                        "name": "HOSTNAME_HTTP",
+                                        "value": "${HOSTNAME_HTTP}"
+                                    },
+                                    {
+                                        "name": "HOSTNAME_HTTPS",
+                                        "value": "${HOSTNAME_HTTPS}"
+                                    },
+                                    {
                                         "name": "HTTPS_KEYSTORE_DIR",
                                         "name": "HTTPS_KEYSTORE_DIR",
                                         "value": "/etc/eap-secret-volume"
                                         "value": "/etc/eap-secret-volume"
                                     },
                                     },
@@ -537,6 +592,10 @@
                                         "value": "${HTTPS_KEYSTORE}"
                                         "value": "${HTTPS_KEYSTORE}"
                                     },
                                     },
                                     {
                                     {
+                                        "name": "HTTPS_KEYSTORE_TYPE",
+                                        "value": "${HTTPS_KEYSTORE_TYPE}"
+                                    },
+                                    {
                                         "name": "HTTPS_NAME",
                                         "name": "HTTPS_NAME",
                                         "value": "${HTTPS_NAME}"
                                         "value": "${HTTPS_NAME}"
                                     },
                                     },
@@ -581,8 +640,16 @@
                                         "value": "${JGROUPS_CLUSTER_PASSWORD}"
                                         "value": "${JGROUPS_CLUSTER_PASSWORD}"
                                     },
                                     },
                                     {
                                     {
-                                        "name": "SSO_URI",
-                                        "value": "${SSO_URI}"
+                                        "name": "AUTO_DEPLOY_EXPLODED",
+                                        "value": "${AUTO_DEPLOY_EXPLODED}"
+                                    },
+                                    {
+                                        "name": "SSO_URL",
+                                        "value": "${SSO_URL}"
+                                    },
+                                    {
+                                        "name": "SSO_SERVICE_URL",
+                                        "value": "${SSO_SERVICE_URL}"
                                     },
                                     },
                                     {
                                     {
                                         "name": "SSO_REALM",
                                         "name": "SSO_REALM",
@@ -605,10 +672,6 @@
                                         "value": "${SSO_BEARER_ONLY}"
                                         "value": "${SSO_BEARER_ONLY}"
                                     },
                                     },
                                     {
                                     {
-                                        "name": "APPLICATION_ROUTES",
-                                        "value": "${APPLICATION_ROUTES}"
-                                    },
-                                    {
                                         "name": "SSO_SAML_KEYSTORE_SECRET",
                                         "name": "SSO_SAML_KEYSTORE_SECRET",
                                         "value": "${SSO_SAML_KEYSTORE_SECRET}"
                                         "value": "${SSO_SAML_KEYSTORE_SECRET}"
                                     },
                                     },
@@ -617,6 +680,10 @@
                                         "value": "${SSO_SAML_KEYSTORE}"
                                         "value": "${SSO_SAML_KEYSTORE}"
                                     },
                                     },
                                     {
                                     {
+                                        "name": "SSO_SAML_KEYSTORE_DIR",
+                                        "value": "/etc/sso-saml-secret-volume"
+                                    },
+                                    {
                                         "name": "SSO_SAML_CERTIFICATE_NAME",
                                         "name": "SSO_SAML_CERTIFICATE_NAME",
                                         "value": "${SSO_SAML_CERTIFICATE_NAME}"
                                         "value": "${SSO_SAML_CERTIFICATE_NAME}"
                                     },
                                     },
@@ -631,6 +698,26 @@
                                     {
                                     {
                                         "name": "SSO_ENABLE_CORS",
                                         "name": "SSO_ENABLE_CORS",
                                         "value": "${SSO_ENABLE_CORS}"
                                         "value": "${SSO_ENABLE_CORS}"
+                                    },
+                                    {
+                                        "name": "SSO_SAML_LOGOUT_PAGE",
+                                        "value": "${SSO_SAML_LOGOUT_PAGE}"
+                                    },
+                                    {
+                                        "name": "SSO_DISABLE_SSL_CERTIFICATE_VALIDATION",
+                                        "value": "${SSO_DISABLE_SSL_CERTIFICATE_VALIDATION}"
+                                    },
+                                    {
+                                        "name": "SSO_TRUSTSTORE",
+                                        "value": "${SSO_TRUSTSTORE}"
+                                    },
+                                    {
+                                        "name": "SSO_TRUSTSTORE_DIR",
+                                        "value": "/etc/sso-secret-volume"
+                                    },
+                                    {
+                                        "name": "SSO_TRUSTSTORE_PASSWORD",
+                                        "value": "${SSO_TRUSTSTORE_PASSWORD}"
                                     }
                                     }
                                 ]
                                 ]
                             }
                             }
@@ -653,6 +740,12 @@
                                 "secret": {
                                 "secret": {
                                     "secretName": "${JGROUPS_ENCRYPT_SECRET}"
                                     "secretName": "${JGROUPS_ENCRYPT_SECRET}"
                                 }
                                 }
+                            },
+                            {
+                                "name": "sso-truststore-volume",
+                                "secret": {
+                                    "secretName": "${SSO_TRUSTSTORE_SECRET}"
+                                }
                             }
                             }
                         ]
                         ]
                     }
                     }

+ 56 - 26
roles/openshift_examples/files/examples/v1.2/xpaas-templates/eap70-amq-persistent-s2i.json

@@ -6,13 +6,13 @@
             "description": "Application template for EAP 7 A-MQ applications with persistent storage built using S2I.",
             "description": "Application template for EAP 7 A-MQ applications with persistent storage built using S2I.",
             "iconClass": "icon-jboss",
             "iconClass": "icon-jboss",
             "tags": "eap,amq,javaee,java,messaging,jboss,xpaas",
             "tags": "eap,amq,javaee,java,messaging,jboss,xpaas",
-            "version": "1.3.1"
+            "version": "1.3.2"
         },
         },
         "name": "eap70-amq-persistent-s2i"
         "name": "eap70-amq-persistent-s2i"
     },
     },
     "labels": {
     "labels": {
         "template": "eap70-amq-persistent-s2i",
         "template": "eap70-amq-persistent-s2i",
-        "xpaas": "1.3.1"
+        "xpaas": "1.3.2"
     },
     },
     "parameters": [
     "parameters": [
         {
         {
@@ -88,9 +88,21 @@
             "required": false
             "required": false
         },
         },
         {
         {
+            "description": "List of packages that are allowed to be serialized for use in ObjectMessage, separated by commas. If your app doesn't use ObjectMessages, leave this blank. This is a security enforcement. For the rationale, see http://activemq.apache.org/objectmessage.html",
+            "name": "MQ_SERIALIZABLE_PACKAGES",
+            "value": "",
+            "required": false
+        },
+        {
+            "description": "The name of the service account to use for the deployment.  The service account should be configured to allow useage of the secret(s) specified by HTTPS_SECRET and JGROUPS_ENCRYPT_SECRET.",
+            "name": "SERVICE_ACCOUNT_NAME",
+            "value": "eap7-service-account",
+            "required": true
+        },
+        {
             "description": "The name of the secret containing the keystore file",
             "description": "The name of the secret containing the keystore file",
             "name": "HTTPS_SECRET",
             "name": "HTTPS_SECRET",
-            "value": "eap-app-secret",
+            "value": "eap7-app-secret",
             "required": false
             "required": false
         },
         },
         {
         {
@@ -100,6 +112,12 @@
             "required": false
             "required": false
         },
         },
         {
         {
+            "description": "The type of the keystore file (JKS or JCEKS)",
+            "name": "HTTPS_KEYSTORE_TYPE",
+            "value": "",
+            "required": false
+        },
+        {
             "description": "The name associated with the server certificate",
             "description": "The name associated with the server certificate",
             "name": "HTTPS_NAME",
             "name": "HTTPS_NAME",
             "value": "",
             "value": "",
@@ -126,18 +144,16 @@
             "required": false
             "required": false
         },
         },
         {
         {
-            "description": "User name for broker admin. If left empty, it will be generated.",
-            "name": "AMQ_ADMIN_USERNAME",
-            "from": "user[a-zA-Z0-9]{3}",
-            "generate": "expression",
-            "required": true
+            "description": "The discovery agent type to use for discovering mesh endpoints.  'dns' will use OpenShift's DNS service to resolve endpoints.  'kube' will use Kubernetes REST API to resolve service endpoints.  If using 'kube' the service account for the pod must have the 'view' role, which can be added via 'oc policy add-role-to-user view system:serviceaccount:<namespace>:default' where <namespace> is the project namespace.",
+            "name": "AMQ_MESH_DISCOVERY_TYPE",
+            "value": "kube",
+            "required": false
         },
         },
         {
         {
-            "description": "Password for broker admin. If left empty, it will be generated.",
-            "name": "AMQ_ADMIN_PASSWORD",
-            "from": "[a-zA-Z0-9]{8}",
-            "generate": "expression",
-            "required": true
+            "description": "The A-MQ storage usage limit",
+            "name": "AMQ_STORAGE_USAGE_LIMIT",
+            "value": "100 gb",
+            "required": false
         },
         },
         {
         {
             "description": "GitHub trigger secret",
             "description": "GitHub trigger secret",
@@ -162,7 +178,7 @@
         {
         {
             "description": "The name of the secret containing the keystore file",
             "description": "The name of the secret containing the keystore file",
             "name": "JGROUPS_ENCRYPT_SECRET",
             "name": "JGROUPS_ENCRYPT_SECRET",
-            "value": "eap-app-secret",
+            "value": "eap7-app-secret",
             "required": false
             "required": false
         },
         },
         {
         {
@@ -189,6 +205,12 @@
             "from": "[a-zA-Z0-9]{8}",
             "from": "[a-zA-Z0-9]{8}",
             "generate": "expression",
             "generate": "expression",
             "required": true
             "required": true
+        },
+        {
+            "description": "Controls whether exploded deployment content should be automatically deployed",
+            "name": "AUTO_DEPLOY_EXPLODED",
+            "value": "false",
+            "required": false
         }
         }
     ],
     ],
     "objects": [
     "objects": [
@@ -342,7 +364,7 @@
                         "from": {
                         "from": {
                             "kind": "ImageStreamTag",
                             "kind": "ImageStreamTag",
                             "namespace": "${IMAGE_STREAM_NAMESPACE}",
                             "namespace": "${IMAGE_STREAM_NAMESPACE}",
-                            "name": "jboss-eap70-openshift:1.3"
+                            "name": "jboss-eap70-openshift:1.4"
                         }
                         }
                     }
                     }
                 },
                 },
@@ -397,8 +419,8 @@
                                 "${APPLICATION_NAME}"
                                 "${APPLICATION_NAME}"
                             ],
                             ],
                             "from": {
                             "from": {
-                                "kind": "ImageStream",
-                                "name": "${APPLICATION_NAME}"
+                                "kind": "ImageStreamTag",
+                                "name": "${APPLICATION_NAME}:latest"
                             }
                             }
                         }
                         }
                     },
                     },
@@ -419,7 +441,7 @@
                         }
                         }
                     },
                     },
                     "spec": {
                     "spec": {
-                        "serviceAccountName": "eap-service-account",
+                        "serviceAccountName": "${SERVICE_ACCOUNT_NAME}",
                         "terminationGracePeriodSeconds": 60,
                         "terminationGracePeriodSeconds": 60,
                         "containers": [
                         "containers": [
                             {
                             {
@@ -508,6 +530,10 @@
                                         "value": "${MQ_TOPICS}"
                                         "value": "${MQ_TOPICS}"
                                     },
                                     },
                                     {
                                     {
+                                        "name": "MQ_SERIALIZABLE_PACKAGES",
+                                        "value": "${MQ_SERIALIZABLE_PACKAGES}"
+                                    },
+                                    {
                                         "name": "OPENSHIFT_KUBE_PING_LABELS",
                                         "name": "OPENSHIFT_KUBE_PING_LABELS",
                                         "value": "application=${APPLICATION_NAME}"
                                         "value": "application=${APPLICATION_NAME}"
                                     },
                                     },
@@ -528,6 +554,10 @@
                                         "value": "${HTTPS_KEYSTORE}"
                                         "value": "${HTTPS_KEYSTORE}"
                                     },
                                     },
                                     {
                                     {
+                                        "name": "HTTPS_KEYSTORE_TYPE",
+                                        "value": "${HTTPS_KEYSTORE_TYPE}"
+                                    },
+                                    {
                                         "name": "HTTPS_NAME",
                                         "name": "HTTPS_NAME",
                                         "value": "${HTTPS_NAME}"
                                         "value": "${HTTPS_NAME}"
                                     },
                                     },
@@ -558,6 +588,10 @@
                                     {
                                     {
                                         "name": "JGROUPS_CLUSTER_PASSWORD",
                                         "name": "JGROUPS_CLUSTER_PASSWORD",
                                         "value": "${JGROUPS_CLUSTER_PASSWORD}"
                                         "value": "${JGROUPS_CLUSTER_PASSWORD}"
+                                    },
+                                    {
+                                        "name": "AUTO_DEPLOY_EXPLODED",
+                                        "value": "${AUTO_DEPLOY_EXPLODED}"
                                     }
                                     }
                                 ]
                                 ]
                             }
                             }
@@ -713,6 +747,10 @@
                                         "value": "${MQ_TOPICS}"
                                         "value": "${MQ_TOPICS}"
                                     },
                                     },
                                     {
                                     {
+                                        "name": "MQ_SERIALIZABLE_PACKAGES",
+                                        "value": "${MQ_SERIALIZABLE_PACKAGES}"
+                                    },
+                                    {
                                         "name": "AMQ_SPLIT",
                                         "name": "AMQ_SPLIT",
                                         "value": "${AMQ_SPLIT}"
                                         "value": "${AMQ_SPLIT}"
                                     },
                                     },
@@ -735,14 +773,6 @@
                                     {
                                     {
                                         "name": "AMQ_STORAGE_USAGE_LIMIT",
                                         "name": "AMQ_STORAGE_USAGE_LIMIT",
                                         "value": "${AMQ_STORAGE_USAGE_LIMIT}"
                                         "value": "${AMQ_STORAGE_USAGE_LIMIT}"
-                                    },
-                                    {
-                                        "name": "AMQ_ADMIN_USERNAME",
-                                        "value": "${AMQ_ADMIN_USERNAME}"
-                                    },
-                                    {
-                                        "name": "AMQ_ADMIN_PASSWORD",
-                                        "value": "${AMQ_ADMIN_PASSWORD}"
                                     }
                                     }
                                 ]
                                 ]
                             }
                             }

+ 70 - 20
roles/openshift_examples/files/examples/v1.2/xpaas-templates/eap70-amq-s2i.json

@@ -6,13 +6,13 @@
             "description": "Application template for EAP 7 A-MQ applications built using S2I.",
             "description": "Application template for EAP 7 A-MQ applications built using S2I.",
             "iconClass": "icon-jboss",
             "iconClass": "icon-jboss",
             "tags": "eap,amq,javaee,java,messaging,jboss,xpaas",
             "tags": "eap,amq,javaee,java,messaging,jboss,xpaas",
-            "version": "1.3.1"
+            "version": "1.3.2"
         },
         },
         "name": "eap70-amq-s2i"
         "name": "eap70-amq-s2i"
     },
     },
     "labels": {
     "labels": {
         "template": "eap70-amq-s2i",
         "template": "eap70-amq-s2i",
-        "xpaas": "1.3.1"
+        "xpaas": "1.3.2"
     },
     },
     "parameters": [
     "parameters": [
         {
         {
@@ -76,6 +76,18 @@
             "required": false
             "required": false
         },
         },
         {
         {
+            "description": "List of packages that are allowed to be serialized for use in ObjectMessage, separated by commas. If your app doesn't use ObjectMessages, leave this blank. This is a security enforcement. For the rationale, see http://activemq.apache.org/objectmessage.html",
+            "name": "MQ_SERIALIZABLE_PACKAGES",
+            "value": "",
+            "required": false
+        },
+        {
+            "description": "The name of the service account to use for the deployment.  The service account should be configured to allow useage of the secret(s) specified by HTTPS_SECRET and JGROUPS_ENCRYPT_SECRET.",
+            "name": "SERVICE_ACCOUNT_NAME",
+            "value": "eap7-service-account",
+            "required": true
+        },
+        {
             "description": "The name of the secret containing the keystore file",
             "description": "The name of the secret containing the keystore file",
             "name": "HTTPS_SECRET",
             "name": "HTTPS_SECRET",
             "value": "eap7-app-secret",
             "value": "eap7-app-secret",
@@ -88,6 +100,12 @@
             "required": false
             "required": false
         },
         },
         {
         {
+            "description": "The type of the keystore file (JKS or JCEKS)",
+            "name": "HTTPS_KEYSTORE_TYPE",
+            "value": "",
+            "required": false
+        },
+        {
             "description": "The name associated with the server certificate",
             "description": "The name associated with the server certificate",
             "name": "HTTPS_NAME",
             "name": "HTTPS_NAME",
             "value": "",
             "value": "",
@@ -114,18 +132,16 @@
             "required": false
             "required": false
         },
         },
         {
         {
-            "description": "User name for broker admin. If left empty, it will be generated.",
-            "name": "AMQ_ADMIN_USERNAME",
-            "from": "user[a-zA-Z0-9]{3}",
-            "generate": "expression",
-            "required": true
+            "description": "The discovery agent type to use for discovering mesh endpoints.  'dns' will use OpenShift's DNS service to resolve endpoints.  'kube' will use Kubernetes REST API to resolve service endpoints.  If using 'kube' the service account for the pod must have the 'view' role, which can be added via 'oc policy add-role-to-user view system:serviceaccount:<namespace>:default' where <namespace> is the project namespace.",
+            "name": "AMQ_MESH_DISCOVERY_TYPE",
+            "value": "kube",
+            "required": false
         },
         },
         {
         {
-            "description": "Password for broker admin. If left empty, it will be generated.",
-            "name": "AMQ_ADMIN_PASSWORD",
-            "from": "[a-zA-Z0-9]{8}",
-            "generate": "expression",
-            "required": true
+            "description": "The A-MQ storage usage limit",
+            "name": "AMQ_STORAGE_USAGE_LIMIT",
+            "value": "100 gb",
+            "required": false
         },
         },
         {
         {
             "description": "GitHub trigger secret",
             "description": "GitHub trigger secret",
@@ -177,6 +193,12 @@
             "from": "[a-zA-Z0-9]{8}",
             "from": "[a-zA-Z0-9]{8}",
             "generate": "expression",
             "generate": "expression",
             "required": true
             "required": true
+        },
+        {
+            "description": "Controls whether exploded deployment content should be automatically deployed",
+            "name": "AUTO_DEPLOY_EXPLODED",
+            "value": "false",
+            "required": false
         }
         }
     ],
     ],
     "objects": [
     "objects": [
@@ -330,7 +352,7 @@
                         "from": {
                         "from": {
                             "kind": "ImageStreamTag",
                             "kind": "ImageStreamTag",
                             "namespace": "${IMAGE_STREAM_NAMESPACE}",
                             "namespace": "${IMAGE_STREAM_NAMESPACE}",
-                            "name": "jboss-eap70-openshift:1.3"
+                            "name": "jboss-eap70-openshift:1.4"
                         }
                         }
                     }
                     }
                 },
                 },
@@ -385,8 +407,8 @@
                                 "${APPLICATION_NAME}"
                                 "${APPLICATION_NAME}"
                             ],
                             ],
                             "from": {
                             "from": {
-                                "kind": "ImageStream",
-                                "name": "${APPLICATION_NAME}"
+                                "kind": "ImageStreamTag",
+                                "name": "${APPLICATION_NAME}:latest"
                             }
                             }
                         }
                         }
                     },
                     },
@@ -407,7 +429,7 @@
                         }
                         }
                     },
                     },
                     "spec": {
                     "spec": {
-                        "serviceAccountName": "eap7-service-account",
+                        "serviceAccountName": "${SERVICE_ACCOUNT_NAME}",
                         "terminationGracePeriodSeconds": 60,
                         "terminationGracePeriodSeconds": 60,
                         "containers": [
                         "containers": [
                             {
                             {
@@ -496,6 +518,10 @@
                                         "value": "${MQ_TOPICS}"
                                         "value": "${MQ_TOPICS}"
                                     },
                                     },
                                     {
                                     {
+                                        "name": "MQ_SERIALIZABLE_PACKAGES",
+                                        "value": "${MQ_SERIALIZABLE_PACKAGES}"
+                                    },
+                                    {
                                         "name": "OPENSHIFT_KUBE_PING_LABELS",
                                         "name": "OPENSHIFT_KUBE_PING_LABELS",
                                         "value": "application=${APPLICATION_NAME}"
                                         "value": "application=${APPLICATION_NAME}"
                                     },
                                     },
@@ -516,6 +542,10 @@
                                         "value": "${HTTPS_KEYSTORE}"
                                         "value": "${HTTPS_KEYSTORE}"
                                     },
                                     },
                                     {
                                     {
+                                        "name": "HTTPS_KEYSTORE_TYPE",
+                                        "value": "${HTTPS_KEYSTORE_TYPE}"
+                                    },
+                                    {
                                         "name": "HTTPS_NAME",
                                         "name": "HTTPS_NAME",
                                         "value": "${HTTPS_NAME}"
                                         "value": "${HTTPS_NAME}"
                                     },
                                     },
@@ -546,6 +576,10 @@
                                     {
                                     {
                                         "name": "JGROUPS_CLUSTER_PASSWORD",
                                         "name": "JGROUPS_CLUSTER_PASSWORD",
                                         "value": "${JGROUPS_CLUSTER_PASSWORD}"
                                         "value": "${JGROUPS_CLUSTER_PASSWORD}"
+                                    },
+                                    {
+                                        "name": "AUTO_DEPLOY_EXPLODED",
+                                        "value": "${AUTO_DEPLOY_EXPLODED}"
                                     }
                                     }
                                 ]
                                 ]
                             }
                             }
@@ -692,12 +726,28 @@
                                         "value": "${MQ_TOPICS}"
                                         "value": "${MQ_TOPICS}"
                                     },
                                     },
                                     {
                                     {
-                                        "name": "AMQ_ADMIN_USERNAME",
-                                        "value": "${AMQ_ADMIN_USERNAME}"
+                                        "name": "MQ_SERIALIZABLE_PACKAGES",
+                                        "value": "${MQ_SERIALIZABLE_PACKAGES}"
+                                    },
+                                    {
+                                        "name": "AMQ_MESH_DISCOVERY_TYPE",
+                                        "value": "${AMQ_MESH_DISCOVERY_TYPE}"
+                                    },
+                                    {
+                                        "name": "AMQ_MESH_SERVICE_NAME",
+                                        "value": "${APPLICATION_NAME}-amq-tcp"
+                                    },
+                                    {
+                                        "name": "AMQ_MESH_SERVICE_NAMESPACE",
+                                        "valueFrom": {
+                                            "fieldRef": {
+                                                "fieldPath": "metadata.namespace"
+                                            }
+                                        }
                                     },
                                     },
                                     {
                                     {
-                                        "name": "AMQ_ADMIN_PASSWORD",
-                                        "value": "${AMQ_ADMIN_PASSWORD}"
+                                        "name": "AMQ_STORAGE_USAGE_LIMIT",
+                                        "value": "${AMQ_STORAGE_USAGE_LIMIT}"
                                     }
                                     }
                                 ]
                                 ]
                             }
                             }

+ 27 - 6
roles/openshift_examples/files/examples/v1.2/xpaas-templates/eap70-basic-s2i.json

@@ -6,13 +6,13 @@
             "iconClass": "icon-jboss",
             "iconClass": "icon-jboss",
             "description": "Application template for EAP 7 applications built using S2I.",
             "description": "Application template for EAP 7 applications built using S2I.",
             "tags": "eap,javaee,java,jboss,xpaas",
             "tags": "eap,javaee,java,jboss,xpaas",
-            "version": "1.3.1"
+            "version": "1.3.2"
         },
         },
         "name": "eap70-basic-s2i"
         "name": "eap70-basic-s2i"
     },
     },
     "labels": {
     "labels": {
         "template": "eap70-basic-s2i",
         "template": "eap70-basic-s2i",
-        "xpaas": "1.3.1"
+        "xpaas": "1.3.2"
     },
     },
     "parameters": [
     "parameters": [
         {
         {
@@ -90,6 +90,12 @@
             "from": "[a-zA-Z0-9]{8}",
             "from": "[a-zA-Z0-9]{8}",
             "generate": "expression",
             "generate": "expression",
             "required": true
             "required": true
+        },
+        {
+            "description": "Controls whether exploded deployment content should be automatically deployed",
+            "name": "AUTO_DEPLOY_EXPLODED",
+            "value": "false",
+            "required": false
         }
         }
     ],
     ],
     "objects": [
     "objects": [
@@ -172,7 +178,7 @@
                         "from": {
                         "from": {
                             "kind": "ImageStreamTag",
                             "kind": "ImageStreamTag",
                             "namespace": "${IMAGE_STREAM_NAMESPACE}",
                             "namespace": "${IMAGE_STREAM_NAMESPACE}",
-                            "name": "jboss-eap70-openshift:1.3"
+                            "name": "jboss-eap70-openshift:1.4"
                         }
                         }
                     }
                     }
                 },
                 },
@@ -227,8 +233,8 @@
                                 "${APPLICATION_NAME}"
                                 "${APPLICATION_NAME}"
                             ],
                             ],
                             "from": {
                             "from": {
-                                "kind": "ImageStream",
-                                "name": "${APPLICATION_NAME}"
+                                "kind": "ImageStreamTag",
+                                "name": "${APPLICATION_NAME}:latest"
                             }
                             }
                         }
                         }
                     },
                     },
@@ -249,12 +255,23 @@
                         }
                         }
                     },
                     },
                     "spec": {
                     "spec": {
-                        "terminationGracePeriodSeconds": 60,
+                        "terminationGracePeriodSeconds": 75,
                         "containers": [
                         "containers": [
                             {
                             {
                                 "name": "${APPLICATION_NAME}",
                                 "name": "${APPLICATION_NAME}",
                                 "image": "${APPLICATION_NAME}",
                                 "image": "${APPLICATION_NAME}",
                                 "imagePullPolicy": "Always",
                                 "imagePullPolicy": "Always",
+                                "lifecycle": {
+                                    "preStop": {
+                                        "exec": {
+                                            "command": [
+                                                "/opt/eap/bin/jboss-cli.sh",
+                                                "-c",
+                                                ":shutdown(timeout=60)"
+                                            ]
+                                        }
+                                    }
+                                },
                                 "livenessProbe": {
                                 "livenessProbe": {
                                     "exec": {
                                     "exec": {
                                         "command": [
                                         "command": [
@@ -318,6 +335,10 @@
                                     {
                                     {
                                         "name": "JGROUPS_CLUSTER_PASSWORD",
                                         "name": "JGROUPS_CLUSTER_PASSWORD",
                                         "value": "${JGROUPS_CLUSTER_PASSWORD}"
                                         "value": "${JGROUPS_CLUSTER_PASSWORD}"
+                                    },
+                                    {
+                                        "name": "AUTO_DEPLOY_EXPLODED",
+                                        "value": "${AUTO_DEPLOY_EXPLODED}"
                                     }
                                     }
                                 ]
                                 ]
                             }
                             }

+ 44 - 7
roles/openshift_examples/files/examples/v1.2/xpaas-templates/eap70-https-s2i.json

@@ -6,13 +6,13 @@
             "iconClass": "icon-jboss",
             "iconClass": "icon-jboss",
             "description": "Application template for EAP 7 applications built using S2I.",
             "description": "Application template for EAP 7 applications built using S2I.",
             "tags": "eap,javaee,java,jboss,xpaas",
             "tags": "eap,javaee,java,jboss,xpaas",
-            "version": "1.3.1"
+            "version": "1.3.2"
         },
         },
         "name": "eap70-https-s2i"
         "name": "eap70-https-s2i"
     },
     },
     "labels": {
     "labels": {
         "template": "eap70-https-s2i",
         "template": "eap70-https-s2i",
-        "xpaas": "1.3.1"
+        "xpaas": "1.3.2"
     },
     },
     "parameters": [
     "parameters": [
         {
         {
@@ -64,6 +64,12 @@
             "required": false
             "required": false
         },
         },
         {
         {
+            "description": "The name of the service account to use for the deployment.  The service account should be configured to allow useage of the secret(s) specified by HTTPS_SECRET and JGROUPS_ENCRYPT_SECRET.",
+            "name": "SERVICE_ACCOUNT_NAME",
+            "value": "eap7-service-account",
+            "required": true
+        },
+        {
             "description": "The name of the secret containing the keystore file",
             "description": "The name of the secret containing the keystore file",
             "name": "HTTPS_SECRET",
             "name": "HTTPS_SECRET",
             "value": "eap7-app-secret",
             "value": "eap7-app-secret",
@@ -76,6 +82,12 @@
             "required": false
             "required": false
         },
         },
         {
         {
+            "description": "The type of the keystore file (JKS or JCEKS)",
+            "name": "HTTPS_KEYSTORE_TYPE",
+            "value": "",
+            "required": false
+        },
+        {
             "description": "The name associated with the server certificate",
             "description": "The name associated with the server certificate",
             "name": "HTTPS_NAME",
             "name": "HTTPS_NAME",
             "value": "",
             "value": "",
@@ -144,6 +156,12 @@
             "from": "[a-zA-Z0-9]{8}",
             "from": "[a-zA-Z0-9]{8}",
             "generate": "expression",
             "generate": "expression",
             "required": true
             "required": true
+        },
+        {
+            "description": "Controls whether exploded deployment content should be automatically deployed",
+            "name": "AUTO_DEPLOY_EXPLODED",
+            "value": "false",
+            "required": false
         }
         }
     ],
     ],
     "objects": [
     "objects": [
@@ -273,7 +291,7 @@
                         "from": {
                         "from": {
                             "kind": "ImageStreamTag",
                             "kind": "ImageStreamTag",
                             "namespace": "${IMAGE_STREAM_NAMESPACE}",
                             "namespace": "${IMAGE_STREAM_NAMESPACE}",
-                            "name": "jboss-eap70-openshift:1.3"
+                            "name": "jboss-eap70-openshift:1.4"
                         }
                         }
                     }
                     }
                 },
                 },
@@ -328,8 +346,8 @@
                                 "${APPLICATION_NAME}"
                                 "${APPLICATION_NAME}"
                             ],
                             ],
                             "from": {
                             "from": {
-                                "kind": "ImageStream",
-                                "name": "${APPLICATION_NAME}"
+                                "kind": "ImageStreamTag",
+                                "name": "${APPLICATION_NAME}:latest"
                             }
                             }
                         }
                         }
                     },
                     },
@@ -350,8 +368,8 @@
                         }
                         }
                     },
                     },
                     "spec": {
                     "spec": {
-                        "serviceAccountName": "eap7-service-account",
-                        "terminationGracePeriodSeconds": 60,
+                        "serviceAccountName": "${SERVICE_ACCOUNT_NAME}",
+                        "terminationGracePeriodSeconds": 75,
                         "containers": [
                         "containers": [
                             {
                             {
                                 "name": "${APPLICATION_NAME}",
                                 "name": "${APPLICATION_NAME}",
@@ -369,6 +387,17 @@
                                         "readOnly": true
                                         "readOnly": true
                                     }
                                     }
                                 ],
                                 ],
+                                "lifecycle": {
+                                    "preStop": {
+                                        "exec": {
+                                            "command": [
+                                                "/opt/eap/bin/jboss-cli.sh",
+                                                "-c",
+                                                ":shutdown(timeout=60)"
+                                            ]
+                                        }
+                                    }
+                                },
                                 "livenessProbe": {
                                 "livenessProbe": {
                                     "exec": {
                                     "exec": {
                                         "command": [
                                         "command": [
@@ -431,6 +460,10 @@
                                         "value": "${HTTPS_KEYSTORE}"
                                         "value": "${HTTPS_KEYSTORE}"
                                     },
                                     },
                                     {
                                     {
+                                        "name": "HTTPS_KEYSTORE_TYPE",
+                                        "value": "${HTTPS_KEYSTORE_TYPE}"
+                                    },
+                                    {
                                         "name": "HTTPS_NAME",
                                         "name": "HTTPS_NAME",
                                         "value": "${HTTPS_NAME}"
                                         "value": "${HTTPS_NAME}"
                                     },
                                     },
@@ -473,6 +506,10 @@
                                     {
                                     {
                                         "name": "JGROUPS_CLUSTER_PASSWORD",
                                         "name": "JGROUPS_CLUSTER_PASSWORD",
                                         "value": "${JGROUPS_CLUSTER_PASSWORD}"
                                         "value": "${JGROUPS_CLUSTER_PASSWORD}"
+                                    },
+                                    {
+                                        "name": "AUTO_DEPLOY_EXPLODED",
+                                        "value": "${AUTO_DEPLOY_EXPLODED}"
                                     }
                                     }
                                 ]
                                 ]
                             }
                             }

+ 44 - 7
roles/openshift_examples/files/examples/v1.2/xpaas-templates/eap70-mongodb-persistent-s2i.json

@@ -6,13 +6,13 @@
             "description": "Application template for EAP 7 MongoDB applications with persistent storage built using S2I.",
             "description": "Application template for EAP 7 MongoDB applications with persistent storage built using S2I.",
             "iconClass": "icon-jboss",
             "iconClass": "icon-jboss",
             "tags": "eap,mongodb,javaee,java,database,jboss,xpaas",
             "tags": "eap,mongodb,javaee,java,database,jboss,xpaas",
-            "version": "1.3.1"
+            "version": "1.3.2"
         },
         },
         "name": "eap70-mongodb-persistent-s2i"
         "name": "eap70-mongodb-persistent-s2i"
     },
     },
     "labels": {
     "labels": {
         "template": "eap70-mongodb-persistent-s2i",
         "template": "eap70-mongodb-persistent-s2i",
-        "xpaas": "1.3.1"
+        "xpaas": "1.3.2"
     },
     },
     "parameters": [
     "parameters": [
         {
         {
@@ -82,6 +82,12 @@
             "required": false
             "required": false
         },
         },
         {
         {
+            "description": "The name of the service account to use for the deployment.  The service account should be configured to allow useage of the secret(s) specified by HTTPS_SECRET and JGROUPS_ENCRYPT_SECRET.",
+            "name": "SERVICE_ACCOUNT_NAME",
+            "value": "eap7-service-account",
+            "required": true
+        },
+        {
             "description": "The name of the secret containing the keystore file",
             "description": "The name of the secret containing the keystore file",
             "name": "HTTPS_SECRET",
             "name": "HTTPS_SECRET",
             "value": "eap7-app-secret",
             "value": "eap7-app-secret",
@@ -94,6 +100,12 @@
             "required": false
             "required": false
         },
         },
         {
         {
+            "description": "The type of the keystore file (JKS or JCEKS)",
+            "name": "HTTPS_KEYSTORE_TYPE",
+            "value": "",
+            "required": false
+        },
+        {
             "description": "The name associated with the server certificate",
             "description": "The name associated with the server certificate",
             "name": "HTTPS_NAME",
             "name": "HTTPS_NAME",
             "value": "",
             "value": "",
@@ -213,6 +225,12 @@
             "from": "[a-zA-Z0-9]{8}",
             "from": "[a-zA-Z0-9]{8}",
             "generate": "expression",
             "generate": "expression",
             "required": true
             "required": true
+        },
+        {
+            "description": "Controls whether exploded deployment content should be automatically deployed",
+            "name": "AUTO_DEPLOY_EXPLODED",
+            "value": "false",
+            "required": false
         }
         }
     ],
     ],
     "objects": [
     "objects": [
@@ -366,7 +384,7 @@
                         "from": {
                         "from": {
                             "kind": "ImageStreamTag",
                             "kind": "ImageStreamTag",
                             "namespace": "${IMAGE_STREAM_NAMESPACE}",
                             "namespace": "${IMAGE_STREAM_NAMESPACE}",
-                            "name": "jboss-eap70-openshift:1.3"
+                            "name": "jboss-eap70-openshift:1.4"
                         }
                         }
                     }
                     }
                 },
                 },
@@ -421,8 +439,8 @@
                                 "${APPLICATION_NAME}"
                                 "${APPLICATION_NAME}"
                             ],
                             ],
                             "from": {
                             "from": {
-                                "kind": "ImageStream",
-                                "name": "${APPLICATION_NAME}"
+                                "kind": "ImageStreamTag",
+                                "name": "${APPLICATION_NAME}:latest"
                             }
                             }
                         }
                         }
                     },
                     },
@@ -443,8 +461,8 @@
                         }
                         }
                     },
                     },
                     "spec": {
                     "spec": {
-                        "serviceAccountName": "eap7-service-account",
-                        "terminationGracePeriodSeconds": 60,
+                        "serviceAccountName": "${SERVICE_ACCOUNT_NAME}",
+                        "terminationGracePeriodSeconds": 75,
                         "containers": [
                         "containers": [
                             {
                             {
                                 "name": "${APPLICATION_NAME}",
                                 "name": "${APPLICATION_NAME}",
@@ -462,6 +480,17 @@
                                         "readOnly": true
                                         "readOnly": true
                                     }
                                     }
                                 ],
                                 ],
+                                "lifecycle": {
+                                    "preStop": {
+                                        "exec": {
+                                            "command": [
+                                                "/opt/eap/bin/jboss-cli.sh",
+                                                "-c",
+                                                ":shutdown(timeout=60)"
+                                            ]
+                                        }
+                                    }
+                                },
                                 "livenessProbe": {
                                 "livenessProbe": {
                                     "exec": {
                                     "exec": {
                                         "command": [
                                         "command": [
@@ -560,6 +589,10 @@
                                         "value": "${HTTPS_KEYSTORE}"
                                         "value": "${HTTPS_KEYSTORE}"
                                     },
                                     },
                                     {
                                     {
+                                        "name": "HTTPS_KEYSTORE_TYPE",
+                                        "value": "${HTTPS_KEYSTORE_TYPE}"
+                                    },
+                                    {
                                         "name": "HTTPS_NAME",
                                         "name": "HTTPS_NAME",
                                         "value": "${HTTPS_NAME}"
                                         "value": "${HTTPS_NAME}"
                                     },
                                     },
@@ -602,6 +635,10 @@
                                     {
                                     {
                                         "name": "JGROUPS_CLUSTER_PASSWORD",
                                         "name": "JGROUPS_CLUSTER_PASSWORD",
                                         "value": "${JGROUPS_CLUSTER_PASSWORD}"
                                         "value": "${JGROUPS_CLUSTER_PASSWORD}"
+                                    },
+                                    {
+                                        "name": "AUTO_DEPLOY_EXPLODED",
+                                        "value": "${AUTO_DEPLOY_EXPLODED}"
                                     }
                                     }
                                 ]
                                 ]
                             }
                             }

+ 44 - 7
roles/openshift_examples/files/examples/v1.2/xpaas-templates/eap70-mongodb-s2i.json

@@ -6,13 +6,13 @@
             "description": "Application template for EAP 7 MongoDB applications built using S2I.",
             "description": "Application template for EAP 7 MongoDB applications built using S2I.",
             "iconClass": "icon-jboss",
             "iconClass": "icon-jboss",
             "tags": "eap,mongodb,javaee,java,database,jboss,xpaas",
             "tags": "eap,mongodb,javaee,java,database,jboss,xpaas",
-            "version": "1.3.1"
+            "version": "1.3.2"
         },
         },
         "name": "eap70-mongodb-s2i"
         "name": "eap70-mongodb-s2i"
     },
     },
     "labels": {
     "labels": {
         "template": "eap70-mongodb-s2i",
         "template": "eap70-mongodb-s2i",
-        "xpaas": "1.3.1"
+        "xpaas": "1.3.2"
     },
     },
     "parameters": [
     "parameters": [
         {
         {
@@ -76,6 +76,12 @@
             "required": false
             "required": false
         },
         },
         {
         {
+            "description": "The name of the service account to use for the deployment.  The service account should be configured to allow useage of the secret(s) specified by HTTPS_SECRET and JGROUPS_ENCRYPT_SECRET.",
+            "name": "SERVICE_ACCOUNT_NAME",
+            "value": "eap7-service-account",
+            "required": true
+        },
+        {
             "description": "The name of the secret containing the keystore file",
             "description": "The name of the secret containing the keystore file",
             "name": "HTTPS_SECRET",
             "name": "HTTPS_SECRET",
             "value": "eap7-app-secret",
             "value": "eap7-app-secret",
@@ -88,6 +94,12 @@
             "required": false
             "required": false
         },
         },
         {
         {
+            "description": "The type of the keystore file (JKS or JCEKS)",
+            "name": "HTTPS_KEYSTORE_TYPE",
+            "value": "",
+            "required": false
+        },
+        {
             "description": "The name associated with the server certificate",
             "description": "The name associated with the server certificate",
             "name": "HTTPS_NAME",
             "name": "HTTPS_NAME",
             "value": "",
             "value": "",
@@ -207,6 +219,12 @@
             "from": "[a-zA-Z0-9]{8}",
             "from": "[a-zA-Z0-9]{8}",
             "generate": "expression",
             "generate": "expression",
             "required": true
             "required": true
+        },
+        {
+            "description": "Controls whether exploded deployment content should be automatically deployed",
+            "name": "AUTO_DEPLOY_EXPLODED",
+            "value": "false",
+            "required": false
         }
         }
     ],
     ],
     "objects": [
     "objects": [
@@ -360,7 +378,7 @@
                         "from": {
                         "from": {
                             "kind": "ImageStreamTag",
                             "kind": "ImageStreamTag",
                             "namespace": "${IMAGE_STREAM_NAMESPACE}",
                             "namespace": "${IMAGE_STREAM_NAMESPACE}",
-                            "name": "jboss-eap70-openshift:1.3"
+                            "name": "jboss-eap70-openshift:1.4"
                         }
                         }
                     }
                     }
                 },
                 },
@@ -415,8 +433,8 @@
                                 "${APPLICATION_NAME}"
                                 "${APPLICATION_NAME}"
                             ],
                             ],
                             "from": {
                             "from": {
-                                "kind": "ImageStream",
-                                "name": "${APPLICATION_NAME}"
+                                "kind": "ImageStreamTag",
+                                "name": "${APPLICATION_NAME}:latest"
                             }
                             }
                         }
                         }
                     },
                     },
@@ -437,8 +455,8 @@
                         }
                         }
                     },
                     },
                     "spec": {
                     "spec": {
-                        "serviceAccountName": "eap7-service-account",
-                        "terminationGracePeriodSeconds": 60,
+                        "serviceAccountName": "${SERVICE_ACCOUNT_NAME}",
+                        "terminationGracePeriodSeconds": 75,
                         "containers": [
                         "containers": [
                             {
                             {
                                 "name": "${APPLICATION_NAME}",
                                 "name": "${APPLICATION_NAME}",
@@ -456,6 +474,17 @@
                                         "readOnly": true
                                         "readOnly": true
                                     }
                                     }
                                 ],
                                 ],
+                                "lifecycle": {
+                                    "preStop": {
+                                        "exec": {
+                                            "command": [
+                                                "/opt/eap/bin/jboss-cli.sh",
+                                                "-c",
+                                                ":shutdown(timeout=60)"
+                                            ]
+                                        }
+                                    }
+                                },
                                 "livenessProbe": {
                                 "livenessProbe": {
                                     "exec": {
                                     "exec": {
                                         "command": [
                                         "command": [
@@ -554,6 +583,10 @@
                                         "value": "${HTTPS_KEYSTORE}"
                                         "value": "${HTTPS_KEYSTORE}"
                                     },
                                     },
                                     {
                                     {
+                                        "name": "HTTPS_KEYSTORE_TYPE",
+                                        "value": "${HTTPS_KEYSTORE_TYPE}"
+                                    },
+                                    {
                                         "name": "HTTPS_NAME",
                                         "name": "HTTPS_NAME",
                                         "value": "${HTTPS_NAME}"
                                         "value": "${HTTPS_NAME}"
                                     },
                                     },
@@ -596,6 +629,10 @@
                                     {
                                     {
                                         "name": "JGROUPS_CLUSTER_PASSWORD",
                                         "name": "JGROUPS_CLUSTER_PASSWORD",
                                         "value": "${JGROUPS_CLUSTER_PASSWORD}"
                                         "value": "${JGROUPS_CLUSTER_PASSWORD}"
+                                    },
+                                    {
+                                        "name": "AUTO_DEPLOY_EXPLODED",
+                                        "value": "${AUTO_DEPLOY_EXPLODED}"
                                     }
                                     }
                                 ]
                                 ]
                             }
                             }

+ 44 - 7
roles/openshift_examples/files/examples/v1.2/xpaas-templates/eap70-mysql-persistent-s2i.json

@@ -6,13 +6,13 @@
             "description": "Application template for EAP 7 MySQL applications with persistent storage built using S2I.",
             "description": "Application template for EAP 7 MySQL applications with persistent storage built using S2I.",
             "iconClass": "icon-jboss",
             "iconClass": "icon-jboss",
             "tags": "eap,mysql,javaee,java,database,jboss,xpaas",
             "tags": "eap,mysql,javaee,java,database,jboss,xpaas",
-            "version": "1.3.1"
+            "version": "1.3.2"
         },
         },
         "name": "eap70-mysql-persistent-s2i"
         "name": "eap70-mysql-persistent-s2i"
     },
     },
     "labels": {
     "labels": {
         "template": "eap70-mysql-persistent-s2i",
         "template": "eap70-mysql-persistent-s2i",
-        "xpaas": "1.3.1"
+        "xpaas": "1.3.2"
     },
     },
     "parameters": [
     "parameters": [
         {
         {
@@ -82,6 +82,12 @@
             "required": false
             "required": false
         },
         },
         {
         {
+            "description": "The name of the service account to use for the deployment.  The service account should be configured to allow useage of the secret(s) specified by HTTPS_SECRET and JGROUPS_ENCRYPT_SECRET.",
+            "name": "SERVICE_ACCOUNT_NAME",
+            "value": "eap7-service-account",
+            "required": true
+        },
+        {
             "description": "The name of the secret containing the keystore file",
             "description": "The name of the secret containing the keystore file",
             "name": "HTTPS_SECRET",
             "name": "HTTPS_SECRET",
             "value": "eap7-app-secret",
             "value": "eap7-app-secret",
@@ -94,6 +100,12 @@
             "required": false
             "required": false
         },
         },
         {
         {
+            "description": "The type of the keystore file (JKS or JCEKS)",
+            "name": "HTTPS_KEYSTORE_TYPE",
+            "value": "",
+            "required": false
+        },
+        {
             "description": "The name associated with the server certificate",
             "description": "The name associated with the server certificate",
             "name": "HTTPS_NAME",
             "name": "HTTPS_NAME",
             "value": "",
             "value": "",
@@ -216,6 +228,12 @@
             "from": "[a-zA-Z0-9]{8}",
             "from": "[a-zA-Z0-9]{8}",
             "generate": "expression",
             "generate": "expression",
             "required": true
             "required": true
+        },
+        {
+            "description": "Controls whether exploded deployment content should be automatically deployed",
+            "name": "AUTO_DEPLOY_EXPLODED",
+            "value": "false",
+            "required": false
         }
         }
     ],
     ],
     "objects": [
     "objects": [
@@ -369,7 +387,7 @@
                         "from": {
                         "from": {
                             "kind": "ImageStreamTag",
                             "kind": "ImageStreamTag",
                             "namespace": "${IMAGE_STREAM_NAMESPACE}",
                             "namespace": "${IMAGE_STREAM_NAMESPACE}",
-                            "name": "jboss-eap70-openshift:1.3"
+                            "name": "jboss-eap70-openshift:1.4"
                         }
                         }
                     }
                     }
                 },
                 },
@@ -424,8 +442,8 @@
                                 "${APPLICATION_NAME}"
                                 "${APPLICATION_NAME}"
                             ],
                             ],
                             "from": {
                             "from": {
-                                "kind": "ImageStream",
-                                "name": "${APPLICATION_NAME}"
+                                "kind": "ImageStreamTag",
+                                "name": "${APPLICATION_NAME}:latest"
                             }
                             }
                         }
                         }
                     },
                     },
@@ -446,8 +464,8 @@
                         }
                         }
                     },
                     },
                     "spec": {
                     "spec": {
-                        "serviceAccountName": "eap7-service-account",
-                        "terminationGracePeriodSeconds": 60,
+                        "serviceAccountName": "${SERVICE_ACCOUNT_NAME}",
+                        "terminationGracePeriodSeconds": 75,
                         "containers": [
                         "containers": [
                             {
                             {
                                 "name": "${APPLICATION_NAME}",
                                 "name": "${APPLICATION_NAME}",
@@ -465,6 +483,17 @@
                                         "readOnly": true
                                         "readOnly": true
                                     }
                                     }
                                 ],
                                 ],
+                                "lifecycle": {
+                                    "preStop": {
+                                        "exec": {
+                                            "command": [
+                                                "/opt/eap/bin/jboss-cli.sh",
+                                                "-c",
+                                                ":shutdown(timeout=60)"
+                                            ]
+                                        }
+                                    }
+                                },
                                 "livenessProbe": {
                                 "livenessProbe": {
                                     "exec": {
                                     "exec": {
                                         "command": [
                                         "command": [
@@ -563,6 +592,10 @@
                                         "value": "${HTTPS_KEYSTORE}"
                                         "value": "${HTTPS_KEYSTORE}"
                                     },
                                     },
                                     {
                                     {
+                                        "name": "HTTPS_KEYSTORE_TYPE",
+                                        "value": "${HTTPS_KEYSTORE_TYPE}"
+                                    },
+                                    {
                                         "name": "HTTPS_NAME",
                                         "name": "HTTPS_NAME",
                                         "value": "${HTTPS_NAME}"
                                         "value": "${HTTPS_NAME}"
                                     },
                                     },
@@ -607,6 +640,10 @@
                                         "value": "${JGROUPS_CLUSTER_PASSWORD}"
                                         "value": "${JGROUPS_CLUSTER_PASSWORD}"
                                     },
                                     },
                                     {
                                     {
+                                        "name": "AUTO_DEPLOY_EXPLODED",
+                                        "value": "${AUTO_DEPLOY_EXPLODED}"
+                                    },
+                                    {
                                         "name": "DEFAULT_JOB_REPOSITORY",
                                         "name": "DEFAULT_JOB_REPOSITORY",
                                         "value": "${APPLICATION_NAME}-mysql"
                                         "value": "${APPLICATION_NAME}-mysql"
                                     },
                                     },

+ 44 - 7
roles/openshift_examples/files/examples/v1.2/xpaas-templates/eap70-mysql-s2i.json

@@ -6,13 +6,13 @@
             "description": "Application template for EAP 7 MySQL applications built using S2I.",
             "description": "Application template for EAP 7 MySQL applications built using S2I.",
             "iconClass": "icon-jboss",
             "iconClass": "icon-jboss",
             "tags": "eap,mysql,javaee,java,database,jboss,xpaas",
             "tags": "eap,mysql,javaee,java,database,jboss,xpaas",
-            "version": "1.3.1"
+            "version": "1.3.2"
         },
         },
         "name": "eap70-mysql-s2i"
         "name": "eap70-mysql-s2i"
     },
     },
     "labels": {
     "labels": {
         "template": "eap70-mysql-s2i",
         "template": "eap70-mysql-s2i",
-        "xpaas": "1.3.1"
+        "xpaas": "1.3.2"
     },
     },
     "parameters": [
     "parameters": [
         {
         {
@@ -76,6 +76,12 @@
             "required": false
             "required": false
         },
         },
         {
         {
+            "description": "The name of the service account to use for the deployment.  The service account should be configured to allow useage of the secret(s) specified by HTTPS_SECRET and JGROUPS_ENCRYPT_SECRET.",
+            "name": "SERVICE_ACCOUNT_NAME",
+            "value": "eap7-service-account",
+            "required": true
+        },
+        {
             "description": "The name of the secret containing the keystore file",
             "description": "The name of the secret containing the keystore file",
             "name": "HTTPS_SECRET",
             "name": "HTTPS_SECRET",
             "value": "eap7-app-secret",
             "value": "eap7-app-secret",
@@ -88,6 +94,12 @@
             "required": false
             "required": false
         },
         },
         {
         {
+            "description": "The type of the keystore file (JKS or JCEKS)",
+            "name": "HTTPS_KEYSTORE_TYPE",
+            "value": "",
+            "required": false
+        },
+        {
             "description": "The name associated with the server certificate",
             "description": "The name associated with the server certificate",
             "name": "HTTPS_NAME",
             "name": "HTTPS_NAME",
             "value": "",
             "value": "",
@@ -210,6 +222,12 @@
             "from": "[a-zA-Z0-9]{8}",
             "from": "[a-zA-Z0-9]{8}",
             "generate": "expression",
             "generate": "expression",
             "required": true
             "required": true
+        },
+        {
+            "description": "Controls whether exploded deployment content should be automatically deployed",
+            "name": "AUTO_DEPLOY_EXPLODED",
+            "value": "false",
+            "required": false
         }
         }
     ],
     ],
     "objects": [
     "objects": [
@@ -363,7 +381,7 @@
                         "from": {
                         "from": {
                             "kind": "ImageStreamTag",
                             "kind": "ImageStreamTag",
                             "namespace": "${IMAGE_STREAM_NAMESPACE}",
                             "namespace": "${IMAGE_STREAM_NAMESPACE}",
-                            "name": "jboss-eap70-openshift:1.3"
+                            "name": "jboss-eap70-openshift:1.4"
                         }
                         }
                     }
                     }
                 },
                 },
@@ -418,8 +436,8 @@
                                 "${APPLICATION_NAME}"
                                 "${APPLICATION_NAME}"
                             ],
                             ],
                             "from": {
                             "from": {
-                                "kind": "ImageStream",
-                                "name": "${APPLICATION_NAME}"
+                                "kind": "ImageStreamTag",
+                                "name": "${APPLICATION_NAME}:latest"
                             }
                             }
                         }
                         }
                     },
                     },
@@ -440,8 +458,8 @@
                         }
                         }
                     },
                     },
                     "spec": {
                     "spec": {
-                        "serviceAccountName": "eap7-service-account",
-                        "terminationGracePeriodSeconds": 60,
+                        "serviceAccountName": "${SERVICE_ACCOUNT_NAME}",
+                        "terminationGracePeriodSeconds": 75,
                         "containers": [
                         "containers": [
                             {
                             {
                                 "name": "${APPLICATION_NAME}",
                                 "name": "${APPLICATION_NAME}",
@@ -459,6 +477,17 @@
                                         "readOnly": true
                                         "readOnly": true
                                     }
                                     }
                                 ],
                                 ],
+                                "lifecycle": {
+                                    "preStop": {
+                                        "exec": {
+                                            "command": [
+                                                "/opt/eap/bin/jboss-cli.sh",
+                                                "-c",
+                                                ":shutdown(timeout=60)"
+                                            ]
+                                        }
+                                    }
+                                },
                                 "livenessProbe": {
                                 "livenessProbe": {
                                     "exec": {
                                     "exec": {
                                         "command": [
                                         "command": [
@@ -557,6 +586,10 @@
                                         "value": "${HTTPS_KEYSTORE}"
                                         "value": "${HTTPS_KEYSTORE}"
                                     },
                                     },
                                     {
                                     {
+                                        "name": "HTTPS_KEYSTORE_TYPE",
+                                        "value": "${HTTPS_KEYSTORE_TYPE}"
+                                    },
+                                    {
                                         "name": "HTTPS_NAME",
                                         "name": "HTTPS_NAME",
                                         "value": "${HTTPS_NAME}"
                                         "value": "${HTTPS_NAME}"
                                     },
                                     },
@@ -601,6 +634,10 @@
                                         "value": "${JGROUPS_CLUSTER_PASSWORD}"
                                         "value": "${JGROUPS_CLUSTER_PASSWORD}"
                                     },
                                     },
                                     {
                                     {
+                                        "name": "AUTO_DEPLOY_EXPLODED",
+                                        "value": "${AUTO_DEPLOY_EXPLODED}"
+                                    },
+                                    {
                                         "name": "DEFAULT_JOB_REPOSITORY",
                                         "name": "DEFAULT_JOB_REPOSITORY",
                                         "value": "${APPLICATION_NAME}-mysql"
                                         "value": "${APPLICATION_NAME}-mysql"
                                     },
                                     },

+ 48 - 7
roles/openshift_examples/files/examples/v1.2/xpaas-templates/eap70-postgresql-persistent-s2i.json

@@ -6,13 +6,13 @@
             "description": "Application template for EAP 7 PostgreSQL applications with persistent storage built using S2I.",
             "description": "Application template for EAP 7 PostgreSQL applications with persistent storage built using S2I.",
             "iconClass": "icon-jboss",
             "iconClass": "icon-jboss",
             "tags": "eap,postgresql,javaee,java,database,jboss,xpaas",
             "tags": "eap,postgresql,javaee,java,database,jboss,xpaas",
-            "version": "1.3.1"
+            "version": "1.3.2"
         },
         },
         "name": "eap70-postgresql-persistent-s2i"
         "name": "eap70-postgresql-persistent-s2i"
     },
     },
     "labels": {
     "labels": {
         "template": "eap70-postgresql-persistent-s2i",
         "template": "eap70-postgresql-persistent-s2i",
-        "xpaas": "1.3.1"
+        "xpaas": "1.3.2"
     },
     },
     "parameters": [
     "parameters": [
         {
         {
@@ -82,6 +82,12 @@
             "required": false
             "required": false
         },
         },
         {
         {
+            "description": "The name of the service account to use for the deployment.  The service account should be configured to allow useage of the secret(s) specified by HTTPS_SECRET and JGROUPS_ENCRYPT_SECRET.",
+            "name": "SERVICE_ACCOUNT_NAME",
+            "value": "eap7-service-account",
+            "required": true
+        },
+        {
             "description": "The name of the secret containing the keystore file",
             "description": "The name of the secret containing the keystore file",
             "name": "HTTPS_SECRET",
             "name": "HTTPS_SECRET",
             "value": "eap7-app-secret",
             "value": "eap7-app-secret",
@@ -94,6 +100,12 @@
             "required": false
             "required": false
         },
         },
         {
         {
+            "description": "The type of the keystore file (JKS or JCEKS)",
+            "name": "HTTPS_KEYSTORE_TYPE",
+            "value": "",
+            "required": false
+        },
+        {
             "description": "The name associated with the server certificate",
             "description": "The name associated with the server certificate",
             "name": "HTTPS_NAME",
             "name": "HTTPS_NAME",
             "value": "",
             "value": "",
@@ -201,6 +213,12 @@
             "from": "[a-zA-Z0-9]{8}",
             "from": "[a-zA-Z0-9]{8}",
             "generate": "expression",
             "generate": "expression",
             "required": true
             "required": true
+        },
+        {
+            "description": "Controls whether exploded deployment content should be automatically deployed",
+            "name": "AUTO_DEPLOY_EXPLODED",
+            "value": "false",
+            "required": false
         }
         }
     ],
     ],
     "objects": [
     "objects": [
@@ -354,7 +372,7 @@
                         "from": {
                         "from": {
                             "kind": "ImageStreamTag",
                             "kind": "ImageStreamTag",
                             "namespace": "${IMAGE_STREAM_NAMESPACE}",
                             "namespace": "${IMAGE_STREAM_NAMESPACE}",
-                            "name": "jboss-eap70-openshift:1.3"
+                            "name": "jboss-eap70-openshift:1.4"
                         }
                         }
                     }
                     }
                 },
                 },
@@ -409,8 +427,8 @@
                                 "${APPLICATION_NAME}"
                                 "${APPLICATION_NAME}"
                             ],
                             ],
                             "from": {
                             "from": {
-                                "kind": "ImageStream",
-                                "name": "${APPLICATION_NAME}"
+                                "kind": "ImageStreamTag",
+                                "name": "${APPLICATION_NAME}:latest"
                             }
                             }
                         }
                         }
                     },
                     },
@@ -431,8 +449,8 @@
                         }
                         }
                     },
                     },
                     "spec": {
                     "spec": {
-                        "serviceAccountName": "eap7-service-account",
-                        "terminationGracePeriodSeconds": 60,
+                        "serviceAccountName": "${SERVICE_ACCOUNT_NAME}",
+                        "terminationGracePeriodSeconds": 75,
                         "containers": [
                         "containers": [
                             {
                             {
                                 "name": "${APPLICATION_NAME}",
                                 "name": "${APPLICATION_NAME}",
@@ -450,6 +468,17 @@
                                         "readOnly": true
                                         "readOnly": true
                                     }
                                     }
                                 ],
                                 ],
+                                "lifecycle": {
+                                    "preStop": {
+                                        "exec": {
+                                            "command": [
+                                                "/opt/eap/bin/jboss-cli.sh",
+                                                "-c",
+                                                ":shutdown(timeout=60)"
+                                            ]
+                                        }
+                                    }
+                                },
                                 "livenessProbe": {
                                 "livenessProbe": {
                                     "exec": {
                                     "exec": {
                                         "command": [
                                         "command": [
@@ -548,6 +577,10 @@
                                         "value": "${HTTPS_KEYSTORE}"
                                         "value": "${HTTPS_KEYSTORE}"
                                     },
                                     },
                                     {
                                     {
+                                        "name": "HTTPS_KEYSTORE_TYPE",
+                                        "value": "${HTTPS_KEYSTORE_TYPE}"
+                                    },
+                                    {
                                         "name": "HTTPS_NAME",
                                         "name": "HTTPS_NAME",
                                         "value": "${HTTPS_NAME}"
                                         "value": "${HTTPS_NAME}"
                                     },
                                     },
@@ -592,6 +625,10 @@
                                         "value": "${JGROUPS_CLUSTER_PASSWORD}"
                                         "value": "${JGROUPS_CLUSTER_PASSWORD}"
                                     },
                                     },
                                     {
                                     {
+                                        "name": "AUTO_DEPLOY_EXPLODED",
+                                        "value": "${AUTO_DEPLOY_EXPLODED}"
+                                    },
+                                    {
                                         "name": "DEFAULT_JOB_REPOSITORY",
                                         "name": "DEFAULT_JOB_REPOSITORY",
                                         "value": "${APPLICATION_NAME}-postgresql"
                                         "value": "${APPLICATION_NAME}-postgresql"
                                     },
                                     },
@@ -701,6 +738,10 @@
                                         "value": "${POSTGRESQL_MAX_CONNECTIONS}"
                                         "value": "${POSTGRESQL_MAX_CONNECTIONS}"
                                     },
                                     },
                                     {
                                     {
+                                        "name": "POSTGRESQL_MAX_PREPARED_TRANSACTIONS",
+                                        "value": "${POSTGRESQL_MAX_CONNECTIONS}"
+                                    },
+                                    {
                                         "name": "POSTGRESQL_SHARED_BUFFERS",
                                         "name": "POSTGRESQL_SHARED_BUFFERS",
                                         "value": "${POSTGRESQL_SHARED_BUFFERS}"
                                         "value": "${POSTGRESQL_SHARED_BUFFERS}"
                                     }
                                     }

+ 48 - 7
roles/openshift_examples/files/examples/v1.2/xpaas-templates/eap70-postgresql-s2i.json

@@ -6,13 +6,13 @@
             "description": "Application template for EAP 7 PostgreSQL applications built using S2I.",
             "description": "Application template for EAP 7 PostgreSQL applications built using S2I.",
             "iconClass": "icon-jboss",
             "iconClass": "icon-jboss",
             "tags": "eap,postgresql,javaee,java,database,jboss,xpaas",
             "tags": "eap,postgresql,javaee,java,database,jboss,xpaas",
-            "version": "1.3.1"
+            "version": "1.3.2"
         },
         },
         "name": "eap70-postgresql-s2i"
         "name": "eap70-postgresql-s2i"
     },
     },
     "labels": {
     "labels": {
         "template": "eap70-postgresql-s2i",
         "template": "eap70-postgresql-s2i",
-        "xpaas": "1.3.1"
+        "xpaas": "1.3.2"
     },
     },
     "parameters": [
     "parameters": [
         {
         {
@@ -76,6 +76,12 @@
             "required": false
             "required": false
         },
         },
         {
         {
+            "description": "The name of the service account to use for the deployment.  The service account should be configured to allow useage of the secret(s) specified by HTTPS_SECRET and JGROUPS_ENCRYPT_SECRET.",
+            "name": "SERVICE_ACCOUNT_NAME",
+            "value": "eap7-service-account",
+            "required": true
+        },
+        {
             "description": "The name of the secret containing the keystore file",
             "description": "The name of the secret containing the keystore file",
             "name": "HTTPS_SECRET",
             "name": "HTTPS_SECRET",
             "value": "eap7-app-secret",
             "value": "eap7-app-secret",
@@ -88,6 +94,12 @@
             "required": false
             "required": false
         },
         },
         {
         {
+            "description": "The type of the keystore file (JKS or JCEKS)",
+            "name": "HTTPS_KEYSTORE_TYPE",
+            "value": "",
+            "required": false
+        },
+        {
             "description": "The name associated with the server certificate",
             "description": "The name associated with the server certificate",
             "name": "HTTPS_NAME",
             "name": "HTTPS_NAME",
             "value": "",
             "value": "",
@@ -195,6 +207,12 @@
             "from": "[a-zA-Z0-9]{8}",
             "from": "[a-zA-Z0-9]{8}",
             "generate": "expression",
             "generate": "expression",
             "required": true
             "required": true
+        },
+        {
+            "description": "Controls whether exploded deployment content should be automatically deployed",
+            "name": "AUTO_DEPLOY_EXPLODED",
+            "value": "false",
+            "required": false
         }
         }
     ],
     ],
     "objects": [
     "objects": [
@@ -348,7 +366,7 @@
                         "from": {
                         "from": {
                             "kind": "ImageStreamTag",
                             "kind": "ImageStreamTag",
                             "namespace": "${IMAGE_STREAM_NAMESPACE}",
                             "namespace": "${IMAGE_STREAM_NAMESPACE}",
-                            "name": "jboss-eap70-openshift:1.3"
+                            "name": "jboss-eap70-openshift:1.4"
                         }
                         }
                     }
                     }
                 },
                 },
@@ -403,8 +421,8 @@
                                 "${APPLICATION_NAME}"
                                 "${APPLICATION_NAME}"
                             ],
                             ],
                             "from": {
                             "from": {
-                                "kind": "ImageStream",
-                                "name": "${APPLICATION_NAME}"
+                                "kind": "ImageStreamTag",
+                                "name": "${APPLICATION_NAME}:latest"
                             }
                             }
                         }
                         }
                     },
                     },
@@ -425,8 +443,8 @@
                         }
                         }
                     },
                     },
                     "spec": {
                     "spec": {
-                        "serviceAccountName": "eap7-service-account",
-                        "terminationGracePeriodSeconds": 60,
+                        "serviceAccountName": "${SERVICE_ACCOUNT_NAME}",
+                        "terminationGracePeriodSeconds": 75,
                         "containers": [
                         "containers": [
                             {
                             {
                                 "name": "${APPLICATION_NAME}",
                                 "name": "${APPLICATION_NAME}",
@@ -444,6 +462,17 @@
                                         "readOnly": true
                                         "readOnly": true
                                     }
                                     }
                                 ],
                                 ],
+                                "lifecycle": {
+                                    "preStop": {
+                                        "exec": {
+                                            "command": [
+                                                "/opt/eap/bin/jboss-cli.sh",
+                                                "-c",
+                                                ":shutdown(timeout=60)"
+                                            ]
+                                        }
+                                    }
+                                },
                                 "livenessProbe": {
                                 "livenessProbe": {
                                     "exec": {
                                     "exec": {
                                         "command": [
                                         "command": [
@@ -542,6 +571,10 @@
                                         "value": "${HTTPS_KEYSTORE}"
                                         "value": "${HTTPS_KEYSTORE}"
                                     },
                                     },
                                     {
                                     {
+                                        "name": "HTTPS_KEYSTORE_TYPE",
+                                        "value": "${HTTPS_KEYSTORE_TYPE}"
+                                    },
+                                    {
                                         "name": "HTTPS_NAME",
                                         "name": "HTTPS_NAME",
                                         "value": "${HTTPS_NAME}"
                                         "value": "${HTTPS_NAME}"
                                     },
                                     },
@@ -586,6 +619,10 @@
                                         "value": "${JGROUPS_CLUSTER_PASSWORD}"
                                         "value": "${JGROUPS_CLUSTER_PASSWORD}"
                                     },
                                     },
                                     {
                                     {
+                                        "name": "AUTO_DEPLOY_EXPLODED",
+                                        "value": "${AUTO_DEPLOY_EXPLODED}"
+                                    },
+                                    {
                                         "name": "DEFAULT_JOB_REPOSITORY",
                                         "name": "DEFAULT_JOB_REPOSITORY",
                                         "value": "${APPLICATION_NAME}-postgresql"
                                         "value": "${APPLICATION_NAME}-postgresql"
                                     },
                                     },
@@ -689,6 +726,10 @@
                                         "value": "${POSTGRESQL_MAX_CONNECTIONS}"
                                         "value": "${POSTGRESQL_MAX_CONNECTIONS}"
                                     },
                                     },
                                     {
                                     {
+                                        "name": "POSTGRESQL_MAX_PREPARED_TRANSACTIONS",
+                                        "value": "${POSTGRESQL_MAX_CONNECTIONS}"
+                                    },
+                                    {
                                         "name": "POSTGRESQL_SHARED_BUFFERS",
                                         "name": "POSTGRESQL_SHARED_BUFFERS",
                                         "value": "${POSTGRESQL_SHARED_BUFFERS}"
                                         "value": "${POSTGRESQL_SHARED_BUFFERS}"
                                     }
                                     }

+ 767 - 0
roles/openshift_examples/files/examples/v1.2/xpaas-templates/eap70-sso-s2i.json

@@ -0,0 +1,767 @@
+{
+    "kind": "Template",
+    "apiVersion": "v1",
+    "metadata": {
+        "annotations": {
+            "iconClass" : "icon-jboss",
+            "description": "Application template for EAP 6 applications built using S2I, enabled for SSO.",
+            "tags": "eap,javaee,java,jboss,xpaas,sso,keycloak",
+            "version": "1.3.2"
+        },
+        "name": "eap70-sso-s2i"
+    },
+    "labels": {
+        "template": "eap70-sso-s2i",
+        "xpaas": "1.3.2"
+    },
+    "parameters": [
+        {
+            "description": "The name for the application.",
+            "name": "APPLICATION_NAME",
+            "value": "eap-app",
+            "required": true
+        },
+        {
+            "description": "Hostname for http service route (e.g. eap-app-myproject.example.com).  Required for SSO-enabled applications.  This is added to the white list of redirects in the SSO server.",
+            "name": "HOSTNAME_HTTP",
+            "value": "",
+            "required": true
+        },
+        {
+            "description": "Hostname for https service route (e.g. secure-eap-app-myproject.example.com).  Required for SSO-enabled applications.  This is added to the white list of redirects in the SSO server.",
+            "name": "HOSTNAME_HTTPS",
+            "value": "",
+            "required": true
+        },
+        {
+            "description": "Git source URI for application",
+            "name": "SOURCE_REPOSITORY_URL",
+            "value": "https://github.com/redhat-developer/redhat-sso-quickstarts",
+            "required": true
+        },
+        {
+            "description": "Git branch/tag reference",
+            "name": "SOURCE_REPOSITORY_REF",
+            "value": "7.0.x-ose",
+            "required": false
+        },
+        {
+            "description": "Path within Git project to build; empty for root project directory.",
+            "name": "CONTEXT_DIR",
+            "value": "",
+            "required": false
+        },
+        {
+            "description": "Queue names",
+            "name": "HORNETQ_QUEUES",
+            "value": "",
+            "required": false
+        },
+        {
+            "description": "Topic names",
+            "name": "HORNETQ_TOPICS",
+            "value": "",
+            "required": false
+        },
+        {
+            "description": "The name of the service account to use for the deployment.  The service account should be configured to allow useage of the secret(s) specified by HTTPS_SECRET and JGROUPS_ENCRYPT_SECRET.",
+            "name": "SERVICE_ACCOUNT_NAME",
+            "value": "eap7-service-account",
+            "required": true
+        },
+        {
+            "description": "The name of the secret containing the keystore file",
+            "name": "HTTPS_SECRET",
+            "value": "eap7-app-secret",
+            "required": true
+        },
+        {
+            "description": "The name of the keystore file within the secret",
+            "name": "HTTPS_KEYSTORE",
+            "value": "keystore.jks",
+            "required": false
+        },
+        {
+            "description": "The type of the keystore file (JKS or JCEKS)",
+            "name": "HTTPS_KEYSTORE_TYPE",
+            "value": "",
+            "required": false
+        },
+        {
+            "description": "The name associated with the server certificate (e.g. jboss)",
+            "name": "HTTPS_NAME",
+            "value": "",
+            "required": false
+        },
+        {
+            "description": "The password for the keystore and certificate (e.g. mykeystorepass)",
+            "name": "HTTPS_PASSWORD",
+            "value": "",
+            "required": false
+        },
+        {
+            "description": "HornetQ cluster admin password",
+            "name": "HORNETQ_CLUSTER_PASSWORD",
+            "from": "[a-zA-Z0-9]{8}",
+            "generate": "expression",
+            "required": true
+        },
+        {
+            "description": "GitHub trigger secret",
+            "name": "GITHUB_WEBHOOK_SECRET",
+            "from": "[a-zA-Z0-9]{8}",
+            "generate": "expression",
+            "required": true
+        },
+        {
+            "description": "Generic build trigger secret",
+            "name": "GENERIC_WEBHOOK_SECRET",
+            "from": "[a-zA-Z0-9]{8}",
+            "generate": "expression",
+            "required": true
+        },
+        {
+            "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.",
+            "name": "IMAGE_STREAM_NAMESPACE",
+            "value": "openshift",
+            "required": true
+        },
+        {
+            "description": "The name of the secret containing the keystore file",
+            "name": "JGROUPS_ENCRYPT_SECRET",
+            "value": "eap7-app-secret",
+            "required": false
+        },
+        {
+            "description": "The name of the keystore file within the secret",
+            "name": "JGROUPS_ENCRYPT_KEYSTORE",
+            "value": "jgroups.jceks",
+            "required": false
+        },
+        {
+            "description": "The name associated with the server certificate (e.g. secret-key)",
+            "name": "JGROUPS_ENCRYPT_NAME",
+            "value": "",
+            "required": false
+        },
+        {
+            "description": "The password for the keystore and certificate (e.g. password)",
+            "name": "JGROUPS_ENCRYPT_PASSWORD",
+            "value": "",
+            "required": false
+        },
+        {
+            "description": "JGroups cluster password",
+            "name": "JGROUPS_CLUSTER_PASSWORD",
+            "from": "[a-zA-Z0-9]{8}",
+            "generate": "expression",
+            "required": true
+        },
+        {
+            "description": "Controls whether exploded deployment content should be automatically deployed",
+            "name": "AUTO_DEPLOY_EXPLODED",
+            "value": "false",
+            "required": false
+        },
+        {
+            "description": "The URL for the SSO server (e.g. https://secure-sso-myproject.example.com/auth).  This is the URL through which the user will be redirected when a login or token is required by the application.",
+            "name": "SSO_URL",
+            "value": "",
+            "required": true
+        },
+        {
+            "description": "The URL for the interal SSO service, where secure-sso (the default) is the kubernetes service exposed by the SSO server.  This is used to create the application client(s) (see SSO_USERNAME).  This can also be the same as SSO_URL.",
+            "name": "SSO_SERVICE_URL",
+            "value": "https://secure-sso:8443/auth",
+            "required": false
+        },
+        {
+            "description": "The SSO realm to which the application client(s) should be associated (e.g. demo).",
+            "name": "SSO_REALM",
+            "value": "",
+            "required": true
+        },
+        {
+            "description": "The username used to access the SSO service.  This is used to create the appliction client(s) within the specified SSO realm. This should match the SSO_SERVICE_USERNAME specified through one of the sso70-* templates.",
+            "name": "SSO_USERNAME",
+            "value": "",
+            "required": false
+        },
+        {
+            "description": "The password for the SSO service user.",
+            "name": "SSO_PASSWORD",
+            "value": "",
+            "required": false
+        },
+        {
+            "description": "SSO Public Key. Public key is recommended to be passed into the template to avoid man-in-the-middle security vulnerability",
+            "name": "SSO_PUBLIC_KEY",
+            "value": "",
+            "required": false
+        },
+        {
+            "description": "SSO Client Access Type",
+            "name": "SSO_BEARER_ONLY",
+            "value": "",
+            "required": false
+        },
+        {
+            "description": "List of directories from which archives will be copied into the deployment folder.  If unspecified, all archives in /target will be copied.",
+            "name": "ARTIFACT_DIR",
+            "value": "app-jee-jsp/target,service-jee-jaxrs/target,app-profile-jee-jsp/target,app-profile-saml-jee-jsp/target",
+            "required": false
+        },
+        {
+            "description": "The name of the secret containing the keystore file",
+            "name": "SSO_SAML_KEYSTORE_SECRET",
+            "value": "eap7-app-secret",
+            "required": false
+        },
+        {
+            "description": "The name of the keystore file within the secret",
+            "name": "SSO_SAML_KEYSTORE",
+            "value": "keystore.jks",
+            "required": false
+        },
+        {
+            "description": "The name associated with the server certificate",
+            "name": "SSO_SAML_CERTIFICATE_NAME",
+            "value": "jboss",
+            "required": false
+        },
+        {
+            "description": "The password for the keystore and certificate",
+            "name": "SSO_SAML_KEYSTORE_PASSWORD",
+            "value": "mykeystorepass",
+            "required": false
+        },
+        {
+            "description": "The SSO Client Secret for Confidential Access",
+            "name": "SSO_SECRET",
+            "from": "[a-zA-Z0-9]{8}",
+            "generate": "expression",
+            "required": true
+        },
+        {
+            "description": "Enable CORS for SSO applications",
+            "name": "SSO_ENABLE_CORS",
+            "value": "false",
+            "required": false
+        },
+        {
+            "description": "SSO logout page for SAML applications",
+            "name": "SSO_SAML_LOGOUT_PAGE",
+            "value": "/",
+            "required": false
+        },
+        {
+            "description": "If true SSL communication between EAP and the SSO Server will be insecure (i.e. certificate validation is disabled with curl)",
+            "name": "SSO_DISABLE_SSL_CERTIFICATE_VALIDATION",
+            "value": "true",
+            "required": false
+        },
+        {
+            "description": "The name of the truststore file within the secret (e.g. truststore.jks)",
+            "name": "SSO_TRUSTSTORE",
+            "value": "",
+            "required": false
+        },
+        {
+            "description": "The password for the truststore and certificate (e.g. mykeystorepass)",
+            "name": "SSO_TRUSTSTORE_PASSWORD",
+            "value": "",
+            "required": false
+        },
+        {
+            "description": "The name of the secret containing the truststore file (e.g. truststore-secret). Used for volume secretName",
+            "name": "SSO_TRUSTSTORE_SECRET",
+            "value": "eap7-app-secret",
+            "required": false
+        }
+   ],
+    "objects": [
+        {
+            "kind": "Service",
+            "apiVersion": "v1",
+            "spec": {
+                "ports": [
+                    {
+                        "port": 8080,
+                        "targetPort": 8080
+                    }
+                ],
+                "selector": {
+                    "deploymentConfig": "${APPLICATION_NAME}"
+                }
+            },
+            "metadata": {
+                "name": "${APPLICATION_NAME}",
+                "labels": {
+                    "application": "${APPLICATION_NAME}"
+                },
+                "annotations": {
+                    "description": "The web server's http port."
+                }
+            }
+        },
+        {
+            "kind": "Service",
+            "apiVersion": "v1",
+            "spec": {
+                "ports": [
+                    {
+                        "port": 8443,
+                        "targetPort": 8443
+                    }
+                ],
+                "selector": {
+                    "deploymentConfig": "${APPLICATION_NAME}"
+                }
+            },
+            "metadata": {
+                "name": "secure-${APPLICATION_NAME}",
+                "labels": {
+                    "application": "${APPLICATION_NAME}"
+                },
+                "annotations": {
+                    "description": "The web server's https port."
+                }
+            }
+        },
+        {
+            "kind": "Route",
+            "apiVersion": "v1",
+            "id": "${APPLICATION_NAME}-http",
+            "metadata": {
+                "name": "${APPLICATION_NAME}",
+                "labels": {
+                    "application": "${APPLICATION_NAME}"
+                },
+                "annotations": {
+                    "description": "Route for application's http service."
+                }
+            },
+            "spec": {
+                "host": "${HOSTNAME_HTTP}",
+                "to": {
+                    "name": "${APPLICATION_NAME}"
+                }
+            }
+        },
+        {
+            "kind": "Route",
+            "apiVersion": "v1",
+            "id": "${APPLICATION_NAME}-https",
+            "metadata": {
+                "name": "secure-${APPLICATION_NAME}",
+                "labels": {
+                    "application": "${APPLICATION_NAME}"
+                },
+                "annotations": {
+                    "description": "Route for application's https service."
+                }
+            },
+            "spec": {
+                "host": "${HOSTNAME_HTTPS}",
+                "to": {
+                    "name": "secure-${APPLICATION_NAME}"
+                },
+                "tls": {
+                    "termination": "passthrough"
+                }
+            }
+        },
+        {
+            "kind": "ImageStream",
+            "apiVersion": "v1",
+            "metadata": {
+                "name": "${APPLICATION_NAME}",
+                "labels": {
+                    "application": "${APPLICATION_NAME}"
+                }
+            }
+        },
+        {
+            "kind": "BuildConfig",
+            "apiVersion": "v1",
+            "metadata": {
+                "name": "${APPLICATION_NAME}",
+                "labels": {
+                    "application": "${APPLICATION_NAME}"
+                }
+            },
+            "spec": {
+                "source": {
+                    "type": "Git",
+                    "git": {
+                        "uri": "${SOURCE_REPOSITORY_URL}",
+                        "ref": "${SOURCE_REPOSITORY_REF}"
+                    },
+                    "contextDir": "${CONTEXT_DIR}"
+                },
+                "strategy": {
+                    "type": "Source",
+                    "sourceStrategy": {
+                        "forcePull": true,
+                        "from": {
+                            "kind": "ImageStreamTag",
+                            "namespace": "${IMAGE_STREAM_NAMESPACE}",
+                            "name": "jboss-eap70-openshift:1.4"
+                        },
+                        "env": [
+                            {
+                                "name": "ARTIFACT_DIR",
+                                "value": "${ARTIFACT_DIR}"
+                            },
+                            {
+                                "name": "MAVEN_ARGS_APPEND",
+                                "value": ""
+                            }
+                        ]
+                    }
+                },
+                "output": {
+                    "to": {
+                        "kind": "ImageStreamTag",
+                        "name": "${APPLICATION_NAME}:latest"
+                    }
+                },
+                "triggers": [
+                    {
+                        "type": "GitHub",
+                        "github": {
+                            "secret": "${GITHUB_WEBHOOK_SECRET}"
+                        }
+                    },
+                    {
+                        "type": "Generic",
+                        "generic": {
+                            "secret": "${GENERIC_WEBHOOK_SECRET}"
+                        }
+                    },
+                    {
+                        "type": "ImageChange",
+                        "imageChange": {}
+                    },
+                    {
+                        "type": "ConfigChange"
+                    }
+                ]
+            }
+        },
+        {
+            "kind": "DeploymentConfig",
+            "apiVersion": "v1",
+            "metadata": {
+                "name": "${APPLICATION_NAME}",
+                "labels": {
+                    "application": "${APPLICATION_NAME}"
+                }
+            },
+            "spec": {
+                "strategy": {
+                    "type": "Recreate"
+                },
+                "triggers": [
+                    {
+                        "type": "ImageChange",
+                        "imageChangeParams": {
+                            "automatic": true,
+                            "containerNames": [
+                                "${APPLICATION_NAME}"
+                            ],
+                            "from": {
+                                "kind": "ImageStreamTag",
+                                "name": "${APPLICATION_NAME}:latest"
+                            }
+                        }
+                    },
+                    {
+                        "type": "ConfigChange"
+                    }
+                ],
+                "replicas": 1,
+                "selector": {
+                    "deploymentConfig": "${APPLICATION_NAME}"
+                },
+                "template": {
+                    "metadata": {
+                        "name": "${APPLICATION_NAME}",
+                        "labels": {
+                            "deploymentConfig": "${APPLICATION_NAME}",
+                            "application": "${APPLICATION_NAME}"
+                        }
+                    },
+                    "spec": {
+                        "serviceAccountName": "${SERVICE_ACCOUNT_NAME}",
+                        "terminationGracePeriodSeconds": 75,
+                        "containers": [
+                            {
+                                "name": "${APPLICATION_NAME}",
+                                "image": "${APPLICATION_NAME}",
+                                "imagePullPolicy": "Always",
+                                "volumeMounts": [
+                                    {
+                                        "name": "sso-saml-keystore-volume",
+                                        "mountPath": "/etc/sso-saml-secret-volume",
+                                        "readOnly": true
+                                    },
+                                    {
+                                        "name": "eap-keystore-volume",
+                                        "mountPath": "/etc/eap-secret-volume",
+                                        "readOnly": true
+                                    },
+                                    {
+                                        "name": "eap-jgroups-keystore-volume",
+                                        "mountPath": "/etc/jgroups-encrypt-secret-volume",
+                                        "readOnly": true
+                                    },
+                                    {
+                                        "name": "sso-truststore-volume",
+                                        "mountPath": "/etc/sso-secret-volume",
+                                        "readOnly": true
+                                    }
+                                ],
+                                "lifecycle": {
+                                    "preStop": {
+                                        "exec": {
+                                            "command": [
+                                                "/opt/eap/bin/jboss-cli.sh",
+                                                "-c",
+                                                ":shutdown(timeout=60)"
+                                            ]
+                                        }
+                                    }
+                                },
+                                "livenessProbe": {
+                                    "exec": {
+                                        "command": [
+                                            "/bin/bash",
+                                            "-c",
+                                            "/opt/eap/bin/livenessProbe.sh"
+                                        ]
+                                    }
+                                },
+                                "readinessProbe": {
+                                    "exec": {
+                                        "command": [
+                                            "/bin/bash",
+                                            "-c",
+                                            "/opt/eap/bin/readinessProbe.sh"
+                                        ]
+                                    }
+                                },
+                                "ports": [
+                                    {
+                                        "name": "jolokia",
+                                        "containerPort": 8778,
+                                        "protocol": "TCP"
+                                    },
+                                    {
+                                        "name": "http",
+                                        "containerPort": 8080,
+                                        "protocol": "TCP"
+                                    },
+                                    {
+                                        "name": "https",
+                                        "containerPort": 8443,
+                                        "protocol": "TCP"
+                                    },
+                                    {
+                                        "name": "ping",
+                                        "containerPort": 8888,
+                                        "protocol": "TCP"
+                                    }
+                                ],
+                                "env": [
+                                    {
+                                        "name": "OPENSHIFT_KUBE_PING_LABELS",
+                                        "value": "application=${APPLICATION_NAME}"
+                                    },
+                                    {
+                                        "name": "OPENSHIFT_KUBE_PING_NAMESPACE",
+                                        "valueFrom": {
+                                            "fieldRef": {
+                                                "fieldPath": "metadata.namespace"
+                                            }
+                                        }
+                                    },
+                                    {
+                                        "name": "HOSTNAME_HTTP",
+                                        "value": "${HOSTNAME_HTTP}"
+                                    },
+                                    {
+                                        "name": "HOSTNAME_HTTPS",
+                                        "value": "${HOSTNAME_HTTPS}"
+                                    }, 
+                                    {
+                                        "name": "HTTPS_KEYSTORE_DIR",
+                                        "value": "/etc/eap-secret-volume"
+                                    },
+                                    {
+                                        "name": "HTTPS_KEYSTORE",
+                                        "value": "${HTTPS_KEYSTORE}"
+                                    },
+                                    {
+                                        "name": "HTTPS_KEYSTORE_TYPE",
+                                        "value": "${HTTPS_KEYSTORE_TYPE}"
+                                    },
+                                    {
+                                        "name": "HTTPS_NAME",
+                                        "value": "${HTTPS_NAME}"
+                                    },
+                                    {
+                                        "name": "HTTPS_PASSWORD",
+                                        "value": "${HTTPS_PASSWORD}"
+                                    },
+                                    {
+                                        "name": "HORNETQ_CLUSTER_PASSWORD",
+                                        "value": "${HORNETQ_CLUSTER_PASSWORD}"
+                                    },
+                                    {
+                                        "name": "HORNETQ_QUEUES",
+                                        "value": "${HORNETQ_QUEUES}"
+                                    },
+                                    {
+                                        "name": "HORNETQ_TOPICS",
+                                        "value": "${HORNETQ_TOPICS}"
+                                    },
+				                    {
+                                        "name": "JGROUPS_ENCRYPT_SECRET",
+                                        "value": "${JGROUPS_ENCRYPT_SECRET}"
+                                    },
+                                    {
+                                        "name": "JGROUPS_ENCRYPT_KEYSTORE_DIR",
+                                        "value": "/etc/jgroups-encrypt-secret-volume"
+                                    },
+                                    {
+                                        "name": "JGROUPS_ENCRYPT_KEYSTORE",
+                                        "value": "${JGROUPS_ENCRYPT_KEYSTORE}"
+                                    },
+                                    {
+                                        "name": "JGROUPS_ENCRYPT_NAME",
+                                        "value": "${JGROUPS_ENCRYPT_NAME}"
+                                    },
+                                    {
+                                        "name": "JGROUPS_ENCRYPT_PASSWORD",
+                                        "value": "${JGROUPS_ENCRYPT_PASSWORD}"
+                                    },
+                                    {
+                                        "name": "JGROUPS_CLUSTER_PASSWORD",
+                                        "value": "${JGROUPS_CLUSTER_PASSWORD}"
+                                    },
+                                    {
+                                        "name": "AUTO_DEPLOY_EXPLODED",
+                                        "value": "${AUTO_DEPLOY_EXPLODED}"
+                                    },
+                                    {
+                                        "name": "SSO_URL",
+                                        "value": "${SSO_URL}"
+                                    },
+                                    {
+                                        "name": "SSO_SERVICE_URL",
+                                        "value": "${SSO_SERVICE_URL}"
+                                    },
+                                    {
+                                        "name": "SSO_REALM",
+                                        "value": "${SSO_REALM}"
+                                    },
+                                    {
+                                        "name": "SSO_USERNAME",
+                                        "value": "${SSO_USERNAME}"
+                                    },
+                                    {
+                                        "name": "SSO_PASSWORD",
+                                        "value": "${SSO_PASSWORD}"
+                                    },
+                                    {
+                                        "name": "SSO_PUBLIC_KEY",
+                                        "value": "${SSO_PUBLIC_KEY}"
+                                    },
+                                    {
+                                        "name": "SSO_BEARER_ONLY",
+                                        "value": "${SSO_BEARER_ONLY}"
+                                    },
+                                    {
+                                        "name": "SSO_SAML_KEYSTORE_SECRET",
+                                        "value": "${SSO_SAML_KEYSTORE_SECRET}"
+                                    },
+                                    {
+                                        "name": "SSO_SAML_KEYSTORE",
+                                        "value": "${SSO_SAML_KEYSTORE}"
+                                    },
+                                    {
+                                        "name": "SSO_SAML_KEYSTORE_DIR",
+                                        "value": "/etc/sso-saml-secret-volume"
+                                    },
+                                    {
+                                        "name": "SSO_SAML_CERTIFICATE_NAME",
+                                        "value": "${SSO_SAML_CERTIFICATE_NAME}"
+                                    },
+                                    {
+                                        "name": "SSO_SAML_KEYSTORE_PASSWORD",
+                                        "value": "${SSO_SAML_KEYSTORE_PASSWORD}"
+                                    },
+                                    {
+                                        "name": "SSO_SECRET",
+                                        "value": "${SSO_SECRET}"
+                                    },
+                                    {
+                                        "name": "SSO_ENABLE_CORS",
+                                        "value": "${SSO_ENABLE_CORS}"
+                                    },
+                                    {
+                                        "name": "SSO_SAML_LOGOUT_PAGE",
+                                        "value": "${SSO_SAML_LOGOUT_PAGE}"
+                                    },
+                                    {
+                                        "name": "SSO_DISABLE_SSL_CERTIFICATE_VALIDATION",
+                                        "value": "${SSO_DISABLE_SSL_CERTIFICATE_VALIDATION}"
+                                    },
+                                    {
+                                        "name": "SSO_TRUSTSTORE",
+                                        "value": "${SSO_TRUSTSTORE}"
+                                    },
+                                    {
+                                        "name": "SSO_TRUSTSTORE_DIR",
+                                        "value": "/etc/sso-secret-volume"
+                                    },
+                                    {
+                                        "name": "SSO_TRUSTSTORE_PASSWORD",
+                                        "value": "${SSO_TRUSTSTORE_PASSWORD}"
+                                    }
+                                ]
+                            }
+                        ],
+                        "volumes": [
+                            {
+                                "name": "sso-saml-keystore-volume",
+                                "secret": {
+                                    "secretName": "${SSO_SAML_KEYSTORE_SECRET}"
+                                }
+                            },
+                            {
+                                "name": "eap-keystore-volume",
+                                "secret": {
+                                    "secretName": "${HTTPS_SECRET}"
+                                }
+                            },
+                            {
+                                "name": "eap-jgroups-keystore-volume",
+                                "secret": {
+                                    "secretName": "${JGROUPS_ENCRYPT_SECRET}"
+                                }
+                            },
+                            {
+                                "name": "sso-truststore-volume",
+                                "secret": {
+                                    "secretName": "${SSO_TRUSTSTORE_SECRET}"
+                                }
+                            }
+                        ]
+                    }
+                }
+            }
+        }
+    ]
+}

+ 2 - 2
roles/openshift_examples/files/examples/v1.2/xpaas-templates/jws30-tomcat7-basic-s2i.json

@@ -215,8 +215,8 @@
                                 "${APPLICATION_NAME}"
                                 "${APPLICATION_NAME}"
                             ],
                             ],
                             "from": {
                             "from": {
-                                "kind": "ImageStream",
-                                "name": "${APPLICATION_NAME}"
+                                "kind": "ImageStreamTag",
+                                "name": "${APPLICATION_NAME}:latest"
                             }
                             }
                         }
                         }
                     },
                     },

+ 2 - 2
roles/openshift_examples/files/examples/v1.2/xpaas-templates/jws30-tomcat7-https-s2i.json

@@ -292,8 +292,8 @@
                                 "${APPLICATION_NAME}"
                                 "${APPLICATION_NAME}"
                             ],
                             ],
                             "from": {
                             "from": {
-                                "kind": "ImageStream",
-                                "name": "${APPLICATION_NAME}"
+                                "kind": "ImageStreamTag",
+                                "name": "${APPLICATION_NAME}:latest"
                             }
                             }
                         }
                         }
                     },
                     },

+ 2 - 2
roles/openshift_examples/files/examples/v1.2/xpaas-templates/jws30-tomcat7-mongodb-persistent-s2i.json

@@ -385,8 +385,8 @@
                                 "${APPLICATION_NAME}"
                                 "${APPLICATION_NAME}"
                             ],
                             ],
                             "from": {
                             "from": {
-                                "kind": "ImageStream",
-                                "name": "${APPLICATION_NAME}"
+                                "kind": "ImageStreamTag",
+                                "name": "${APPLICATION_NAME}:latest"
                             }
                             }
                         }
                         }
                     },
                     },

+ 2 - 2
roles/openshift_examples/files/examples/v1.2/xpaas-templates/jws30-tomcat7-mongodb-s2i.json

@@ -379,8 +379,8 @@
                                 "${APPLICATION_NAME}"
                                 "${APPLICATION_NAME}"
                             ],
                             ],
                             "from": {
                             "from": {
-                                "kind": "ImageStream",
-                                "name": "${APPLICATION_NAME}"
+                                "kind": "ImageStreamTag",
+                                "name": "${APPLICATION_NAME}:latest"
                             }
                             }
                         }
                         }
                     },
                     },

+ 2 - 2
roles/openshift_examples/files/examples/v1.2/xpaas-templates/jws30-tomcat7-mysql-persistent-s2i.json

@@ -388,8 +388,8 @@
                                 "${APPLICATION_NAME}"
                                 "${APPLICATION_NAME}"
                             ],
                             ],
                             "from": {
                             "from": {
-                                "kind": "ImageStream",
-                                "name": "${APPLICATION_NAME}"
+                                "kind": "ImageStreamTag",
+                                "name": "${APPLICATION_NAME}:latest"
                             }
                             }
                         }
                         }
                     },
                     },

+ 2 - 2
roles/openshift_examples/files/examples/v1.2/xpaas-templates/jws30-tomcat7-mysql-s2i.json

@@ -382,8 +382,8 @@
                                 "${APPLICATION_NAME}"
                                 "${APPLICATION_NAME}"
                             ],
                             ],
                             "from": {
                             "from": {
-                                "kind": "ImageStream",
-                                "name": "${APPLICATION_NAME}"
+                                "kind": "ImageStreamTag",
+                                "name": "${APPLICATION_NAME}:latest"
                             }
                             }
                         }
                         }
                     },
                     },

+ 8 - 4
roles/openshift_examples/files/examples/v1.2/xpaas-templates/jws30-tomcat7-postgresql-persistent-s2i.json

@@ -6,13 +6,13 @@
             "iconClass": "icon-tomcat",
             "iconClass": "icon-tomcat",
             "description": "Application template for JWS PostgreSQL applications with persistent storage built using S2I.",
             "description": "Application template for JWS PostgreSQL applications with persistent storage built using S2I.",
             "tags": "tomcat,tomcat7,postgresql,java,database,jboss,xpaas",
             "tags": "tomcat,tomcat7,postgresql,java,database,jboss,xpaas",
-            "version": "1.2.0"
+            "version": "1.3.2"
         },
         },
         "name": "jws30-tomcat7-postgresql-persistent-s2i"
         "name": "jws30-tomcat7-postgresql-persistent-s2i"
     },
     },
     "labels": {
     "labels": {
         "template": "jws30-tomcat7-postgresql-persistent-s2i",
         "template": "jws30-tomcat7-postgresql-persistent-s2i",
-        "xpaas": "1.2.0"
+        "xpaas": "1.3.2"
     },
     },
     "parameters": [
     "parameters": [
         {
         {
@@ -373,8 +373,8 @@
                                 "${APPLICATION_NAME}"
                                 "${APPLICATION_NAME}"
                             ],
                             ],
                             "from": {
                             "from": {
-                                "kind": "ImageStream",
-                                "name": "${APPLICATION_NAME}"
+                                "kind": "ImageStreamTag",
+                                "name": "${APPLICATION_NAME}:latest"
                             }
                             }
                         }
                         }
                     },
                     },
@@ -587,6 +587,10 @@
                                         "value": "${POSTGRESQL_MAX_CONNECTIONS}"
                                         "value": "${POSTGRESQL_MAX_CONNECTIONS}"
                                     },
                                     },
                                     {
                                     {
+                                        "name": "POSTGRESQL_MAX_PREPARED_TRANSACTIONS",
+                                        "value": "${POSTGRESQL_MAX_CONNECTIONS}"
+                                    },
+                                    {
                                         "name": "POSTGRESQL_SHARED_BUFFERS",
                                         "name": "POSTGRESQL_SHARED_BUFFERS",
                                         "value": "${POSTGRESQL_SHARED_BUFFERS}"
                                         "value": "${POSTGRESQL_SHARED_BUFFERS}"
                                     }
                                     }

+ 8 - 4
roles/openshift_examples/files/examples/v1.2/xpaas-templates/jws30-tomcat7-postgresql-s2i.json

@@ -6,13 +6,13 @@
             "iconClass": "icon-tomcat",
             "iconClass": "icon-tomcat",
             "description": "Application template for JWS PostgreSQL applications built using S2I.",
             "description": "Application template for JWS PostgreSQL applications built using S2I.",
             "tags": "tomcat,tomcat7,postgresql,java,database,jboss,xpaas",
             "tags": "tomcat,tomcat7,postgresql,java,database,jboss,xpaas",
-            "version": "1.2.0"
+            "version": "1.3.2"
         },
         },
         "name": "jws30-tomcat7-postgresql-s2i"
         "name": "jws30-tomcat7-postgresql-s2i"
     },
     },
     "labels": {
     "labels": {
         "template": "jws30-tomcat7-postgresql-s2i",
         "template": "jws30-tomcat7-postgresql-s2i",
-        "xpaas": "1.2.0"
+        "xpaas": "1.3.2"
     },
     },
     "parameters": [
     "parameters": [
         {
         {
@@ -367,8 +367,8 @@
                                 "${APPLICATION_NAME}"
                                 "${APPLICATION_NAME}"
                             ],
                             ],
                             "from": {
                             "from": {
-                                "kind": "ImageStream",
-                                "name": "${APPLICATION_NAME}"
+                                "kind": "ImageStreamTag",
+                                "name": "${APPLICATION_NAME}:latest"
                             }
                             }
                         }
                         }
                     },
                     },
@@ -575,6 +575,10 @@
                                         "value": "${POSTGRESQL_MAX_CONNECTIONS}"
                                         "value": "${POSTGRESQL_MAX_CONNECTIONS}"
                                     },
                                     },
                                     {
                                     {
+                                        "name": "POSTGRESQL_MAX_PREPARED_TRANSACTIONS",
+                                        "value": "${POSTGRESQL_MAX_CONNECTIONS}"
+                                    },
+                                    {
                                         "name": "POSTGRESQL_SHARED_BUFFERS",
                                         "name": "POSTGRESQL_SHARED_BUFFERS",
                                         "value": "${POSTGRESQL_SHARED_BUFFERS}"
                                         "value": "${POSTGRESQL_SHARED_BUFFERS}"
                                     }
                                     }

+ 2 - 2
roles/openshift_examples/files/examples/v1.2/xpaas-templates/jws30-tomcat8-basic-s2i.json

@@ -215,8 +215,8 @@
                                 "${APPLICATION_NAME}"
                                 "${APPLICATION_NAME}"
                             ],
                             ],
                             "from": {
                             "from": {
-                                "kind": "ImageStream",
-                                "name": "${APPLICATION_NAME}"
+                                "kind": "ImageStreamTag",
+                                "name": "${APPLICATION_NAME}:latest"
                             }
                             }
                         }
                         }
                     },
                     },

+ 2 - 2
roles/openshift_examples/files/examples/v1.2/xpaas-templates/jws30-tomcat8-https-s2i.json

@@ -292,8 +292,8 @@
                                 "${APPLICATION_NAME}"
                                 "${APPLICATION_NAME}"
                             ],
                             ],
                             "from": {
                             "from": {
-                                "kind": "ImageStream",
-                                "name": "${APPLICATION_NAME}"
+                                "kind": "ImageStreamTag",
+                                "name": "${APPLICATION_NAME}:latest"
                             }
                             }
                         }
                         }
                     },
                     },

+ 2 - 2
roles/openshift_examples/files/examples/v1.2/xpaas-templates/jws30-tomcat8-mongodb-persistent-s2i.json

@@ -385,8 +385,8 @@
                                 "${APPLICATION_NAME}"
                                 "${APPLICATION_NAME}"
                             ],
                             ],
                             "from": {
                             "from": {
-                                "kind": "ImageStream",
-                                "name": "${APPLICATION_NAME}"
+                                "kind": "ImageStreamTag",
+                                "name": "${APPLICATION_NAME}:latest"
                             }
                             }
                         }
                         }
                     },
                     },

+ 2 - 2
roles/openshift_examples/files/examples/v1.2/xpaas-templates/jws30-tomcat8-mongodb-s2i.json

@@ -379,8 +379,8 @@
                                 "${APPLICATION_NAME}"
                                 "${APPLICATION_NAME}"
                             ],
                             ],
                             "from": {
                             "from": {
-                                "kind": "ImageStream",
-                                "name": "${APPLICATION_NAME}"
+                                "kind": "ImageStreamTag",
+                                "name": "${APPLICATION_NAME}:latest"
                             }
                             }
                         }
                         }
                     },
                     },

+ 2 - 2
roles/openshift_examples/files/examples/v1.2/xpaas-templates/jws30-tomcat8-mysql-persistent-s2i.json

@@ -388,8 +388,8 @@
                                 "${APPLICATION_NAME}"
                                 "${APPLICATION_NAME}"
                             ],
                             ],
                             "from": {
                             "from": {
-                                "kind": "ImageStream",
-                                "name": "${APPLICATION_NAME}"
+                                "kind": "ImageStreamTag",
+                                "name": "${APPLICATION_NAME}:latest"
                             }
                             }
                         }
                         }
                     },
                     },

+ 2 - 2
roles/openshift_examples/files/examples/v1.2/xpaas-templates/jws30-tomcat8-mysql-s2i.json

@@ -382,8 +382,8 @@
                                 "${APPLICATION_NAME}"
                                 "${APPLICATION_NAME}"
                             ],
                             ],
                             "from": {
                             "from": {
-                                "kind": "ImageStream",
-                                "name": "${APPLICATION_NAME}"
+                                "kind": "ImageStreamTag",
+                                "name": "${APPLICATION_NAME}:latest"
                             }
                             }
                         }
                         }
                     },
                     },

+ 8 - 4
roles/openshift_examples/files/examples/v1.2/xpaas-templates/jws30-tomcat8-postgresql-persistent-s2i.json

@@ -6,13 +6,13 @@
             "iconClass": "icon-tomcat",
             "iconClass": "icon-tomcat",
             "description": "Application template for JWS PostgreSQL applications with persistent storage built using S2I.",
             "description": "Application template for JWS PostgreSQL applications with persistent storage built using S2I.",
             "tags": "tomcat,tomcat8,postgresql,java,database,jboss,xpaas",
             "tags": "tomcat,tomcat8,postgresql,java,database,jboss,xpaas",
-            "version": "1.2.0"
+            "version": "1.3.2"
         },
         },
         "name": "jws30-tomcat8-postgresql-persistent-s2i"
         "name": "jws30-tomcat8-postgresql-persistent-s2i"
     },
     },
     "labels": {
     "labels": {
         "template": "jws30-tomcat8-postgresql-persistent-s2i",
         "template": "jws30-tomcat8-postgresql-persistent-s2i",
-        "xpaas": "1.2.0"
+        "xpaas": "1.3.2"
     },
     },
     "parameters": [
     "parameters": [
         {
         {
@@ -373,8 +373,8 @@
                                 "${APPLICATION_NAME}"
                                 "${APPLICATION_NAME}"
                             ],
                             ],
                             "from": {
                             "from": {
-                                "kind": "ImageStream",
-                                "name": "${APPLICATION_NAME}"
+                                "kind": "ImageStreamTag",
+                                "name": "${APPLICATION_NAME}:latest"
                             }
                             }
                         }
                         }
                     },
                     },
@@ -587,6 +587,10 @@
                                         "value": "${POSTGRESQL_MAX_CONNECTIONS}"
                                         "value": "${POSTGRESQL_MAX_CONNECTIONS}"
                                     },
                                     },
                                     {
                                     {
+                                        "name": "POSTGRESQL_MAX_PREPARED_TRANSACTIONS",
+                                        "value": "${POSTGRESQL_MAX_CONNECTIONS}"
+                                    },
+                                    {
                                         "name": "POSTGRESQL_SHARED_BUFFERS",
                                         "name": "POSTGRESQL_SHARED_BUFFERS",
                                         "value": "${POSTGRESQL_SHARED_BUFFERS}"
                                         "value": "${POSTGRESQL_SHARED_BUFFERS}"
                                     }
                                     }

+ 8 - 4
roles/openshift_examples/files/examples/v1.2/xpaas-templates/jws30-tomcat8-postgresql-s2i.json

@@ -6,13 +6,13 @@
             "iconClass": "icon-tomcat",
             "iconClass": "icon-tomcat",
             "description": "Application template for JWS PostgreSQL applications built using S2I.",
             "description": "Application template for JWS PostgreSQL applications built using S2I.",
             "tags": "tomcat,tomcat8,postgresql,java,database,jboss,xpaas",
             "tags": "tomcat,tomcat8,postgresql,java,database,jboss,xpaas",
-            "version": "1.2.0"
+            "version": "1.3.2"
         },
         },
         "name": "jws30-tomcat8-postgresql-s2i"
         "name": "jws30-tomcat8-postgresql-s2i"
     },
     },
     "labels": {
     "labels": {
         "template": "jws30-tomcat8-postgresql-s2i",
         "template": "jws30-tomcat8-postgresql-s2i",
-        "xpaas": "1.2.0"
+        "xpaas": "1.3.2"
     },
     },
     "parameters": [
     "parameters": [
         {
         {
@@ -367,8 +367,8 @@
                                 "${APPLICATION_NAME}"
                                 "${APPLICATION_NAME}"
                             ],
                             ],
                             "from": {
                             "from": {
-                                "kind": "ImageStream",
-                                "name": "${APPLICATION_NAME}"
+                                "kind": "ImageStreamTag",
+                                "name": "${APPLICATION_NAME}:latest"
                             }
                             }
                         }
                         }
                     },
                     },
@@ -573,6 +573,10 @@
                                         "value": "${POSTGRESQL_MAX_CONNECTIONS}"
                                         "value": "${POSTGRESQL_MAX_CONNECTIONS}"
                                     },
                                     },
                                     {
                                     {
+                                        "name": "POSTGRESQL_MAX_PREPARED_TRANSACTIONS",
+                                        "value": "${POSTGRESQL_MAX_CONNECTIONS}"
+                                    },
+                                    {
                                         "name": "POSTGRESQL_SHARED_BUFFERS",
                                         "name": "POSTGRESQL_SHARED_BUFFERS",
                                         "value": "${POSTGRESQL_SHARED_BUFFERS}"
                                         "value": "${POSTGRESQL_SHARED_BUFFERS}"
                                     }
                                     }

+ 143 - 75
roles/openshift_examples/files/examples/v1.2/xpaas-templates/sso70-basic.json

@@ -6,13 +6,13 @@
             "description": "Application template for SSO 7.0",
             "description": "Application template for SSO 7.0",
             "iconClass" : "icon-jboss",
             "iconClass" : "icon-jboss",
             "tags" : "sso,keycloak,java,jboss,xpaas",
             "tags" : "sso,keycloak,java,jboss,xpaas",
-            "version" : "1.3"
+            "version" : "1.3.2"
         },
         },
-        "name": "sso70-basic"
+        "name": "sso70-https"
     },
     },
     "labels": {
     "labels": {
-        "template": "sso70-basic",
-        "xpaas" : "1.3.0"
+        "template": "sso70-https",
+        "xpaas" : "1.3.2"
     },
     },
     "parameters": [
     "parameters": [
         {
         {
@@ -34,6 +34,12 @@
             "required": false
             "required": false
         },
         },
         {
         {
+            "description": "The name of the service account to use for the deployment.  The service account should be configured to allow useage of the secret(s) specified by HTTPS_SECRET and JGROUPS_ENCRYPT_SECRET.",
+            "name": "SERVICE_ACCOUNT_NAME",
+            "value": "sso-service-account",
+            "required": true
+        },
+        {
             "description": "The name of the secret containing the keystore file",
             "description": "The name of the secret containing the keystore file",
             "name": "HTTPS_SECRET",
             "name": "HTTPS_SECRET",
             "value": "sso-app-secret",
             "value": "sso-app-secret",
@@ -46,15 +52,21 @@
             "required": false
             "required": false
         },
         },
         {
         {
-            "description": "The name associated with the server certificate",
+            "description": "The type of the keystore file (JKS or JCEKS)",
+            "name": "HTTPS_KEYSTORE_TYPE",
+            "value": "",
+            "required": false
+        },
+        {
+            "description": "The name associated with the server certificate (e.g. jboss)",
             "name": "HTTPS_NAME",
             "name": "HTTPS_NAME",
-            "value": "jboss",
+            "value": "",
             "required": false
             "required": false
         },
         },
         {
         {
-            "description": "The password for the keystore and certificate",
+            "description": "The password for the keystore and certificate (e.g. mykeystorepass)",
             "name": "HTTPS_PASSWORD",
             "name": "HTTPS_PASSWORD",
-            "value": "mykeystorepass",
+            "value": "",
             "required": false
             "required": false
         },
         },
         {
         {
@@ -73,28 +85,9 @@
             "required": false
             "required": false
         },
         },
         {
         {
-            "description": "HornetQ cluster admin password",
-            "name": "HORNETQ_CLUSTER_PASSWORD",
-            "from": "[a-zA-Z0-9]{8}",
-            "generate": "expression",
-            "required": true
-        },
-        {
-            "description": "Queue names",
-            "name": "HORNETQ_QUEUES",
-            "value": "",
-            "required": false
-        },
-        {
-            "description": "Topic names",
-            "name": "HORNETQ_TOPICS",
-            "value": "",
-            "required": false
-        },
-        {
             "description": "The name of the secret containing the keystore file",
             "description": "The name of the secret containing the keystore file",
             "name": "JGROUPS_ENCRYPT_SECRET",
             "name": "JGROUPS_ENCRYPT_SECRET",
-            "value": "eap-app-secret",
+            "value": "sso-app-secret",
             "required": false
             "required": false
         },
         },
         {
         {
@@ -104,15 +97,15 @@
             "required": false
             "required": false
         },
         },
         {
         {
-            "description": "The name associated with the server certificate",
+            "description": "The name associated with the server certificate (e.g. secret-key)",
             "name": "JGROUPS_ENCRYPT_NAME",
             "name": "JGROUPS_ENCRYPT_NAME",
-            "value": "secret-key",
+            "value": "",
             "required": false
             "required": false
         },
         },
         {
         {
-            "description": "The password for the keystore and certificate",
+            "description": "The password for the keystore and certificate (e.g. password)",
             "name": "JGROUPS_ENCRYPT_PASSWORD",
             "name": "JGROUPS_ENCRYPT_PASSWORD",
-            "value": "password",
+            "value": "",
             "required": false
             "required": false
         },
         },
         {
         {
@@ -127,6 +120,54 @@
             "name": "IMAGE_STREAM_NAMESPACE",
             "name": "IMAGE_STREAM_NAMESPACE",
             "value": "openshift",
             "value": "openshift",
             "required": true
             "required": true
+        },
+        {
+            "description": "SSO Server admin username",
+            "name": "SSO_ADMIN_USERNAME",
+            "value": "admin",
+            "required": false
+        },
+        {
+            "description": "SSO Server admin  password",
+            "name": "SSO_ADMIN_PASSWORD",
+            "value": "admin",
+            "required": false
+        },
+        {
+            "description": "Realm to be created in the SSO server (e.g. demo).",
+            "name": "SSO_REALM",
+            "value": "",
+            "required": false
+        },
+        {
+            "description": "The username used to access the SSO service.  This is used by clients to create the appliction client(s) within the specified SSO realm.",
+            "name": "SSO_SERVICE_USERNAME",
+            "value": "",
+            "required": false
+        },
+        {
+            "description": "The password for the SSO service user.",
+            "name": "SSO_SERVICE_PASSWORD",
+            "value": "",
+            "required": false
+        },
+        {
+            "description": "The name of the truststore file within the secret (e.g. truststore.jks)",
+            "name": "SSO_TRUSTSTORE",
+            "value": "",
+            "required": false
+        },
+        {
+            "description": "The password for the truststore and certificate (e.g. mykeystorepass)",
+            "name": "SSO_TRUSTSTORE_PASSWORD",
+            "value": "",
+            "required": false
+        },
+        {
+            "description": "The name of the secret containing the truststore file (e.g. truststore-secret). Used for volume secretName",
+            "name": "SSO_TRUSTSTORE_SECRET",
+            "value": "sso-app-secret",
+            "required": false
         }
         }
     ],
     ],
     "objects": [
     "objects": [
@@ -179,30 +220,6 @@
             }
             }
         },
         },
         {
         {
-            "kind": "Service",
-            "apiVersion": "v1",
-            "spec": {
-                "ports": [
-                    {
-                        "port": 5432,
-                        "targetPort": 5432
-                    }
-                ],
-                "selector": {
-                    "deploymentConfig": "${APPLICATION_NAME}-basic"
-                }
-            },
-            "metadata": {
-                "name": "${APPLICATION_NAME}-basic",
-                "labels": {
-                    "application": "${APPLICATION_NAME}"
-                },
-                "annotations": {
-                    "description": "The database server's port."
-                }
-            }
-        },
-        {
             "kind": "Route",
             "kind": "Route",
             "apiVersion": "v1",
             "apiVersion": "v1",
             "id": "${APPLICATION_NAME}-http",
             "id": "${APPLICATION_NAME}-http",
@@ -269,7 +286,7 @@
                              "from": {
                              "from": {
                                 "kind": "ImageStreamTag",
                                 "kind": "ImageStreamTag",
                                 "namespace": "${IMAGE_STREAM_NAMESPACE}",
                                 "namespace": "${IMAGE_STREAM_NAMESPACE}",
-                                "name": "redhat-sso70-openshift:1.3-TP" 
+                                "name": "redhat-sso70-openshift:1.3" 
                             }
                             }
                         }
                         }
                     },
                     },
@@ -290,8 +307,8 @@
                         }
                         }
                     },
                     },
                     "spec": {
                     "spec": {
-                        "serviceAccountName": "sso-service-account",
-                        "terminationGracePeriodSeconds": 60,
+                        "serviceAccountName": "${SERVICE_ACCOUNT_NAME}",
+                        "terminationGracePeriodSeconds": 75,
                         "containers": [
                         "containers": [
                             {
                             {
                                 "name": "${APPLICATION_NAME}",
                                 "name": "${APPLICATION_NAME}",
@@ -307,8 +324,24 @@
                                         "name": "eap-jgroups-keystore-volume",
                                         "name": "eap-jgroups-keystore-volume",
                                         "mountPath": "/etc/jgroups-encrypt-secret-volume",
                                         "mountPath": "/etc/jgroups-encrypt-secret-volume",
                                         "readOnly": true
                                         "readOnly": true
+                                    },
+                                    {
+                                        "name": "sso-truststore-volume",
+                                        "mountPath": "/etc/sso-secret-volume",
+                                        "readOnly": true
                                     }
                                     }
                                 ],
                                 ],
+                                "lifecycle": {
+                                    "preStop": {
+                                        "exec": {
+                                            "command": [
+                                                "/opt/eap/bin/jboss-cli.sh",
+                                                "-c",
+                                                ":shutdown(timeout=60)"
+                                            ]
+                                        }
+                                    }
+                                },
                                 "livenessProbe": {
                                 "livenessProbe": {
                                     "exec": {
                                     "exec": {
                                         "command": [
                                         "command": [
@@ -342,6 +375,11 @@
                                         "name": "https",
                                         "name": "https",
                                         "containerPort": 8443,
                                         "containerPort": 8443,
                                         "protocol": "TCP"
                                         "protocol": "TCP"
+                                    },
+                                    {
+                                        "name": "ping",
+                                        "containerPort": 8888,
+                                        "protocol": "TCP"
                                     }
                                     }
                                 ],
                                 ],
                                 "env": [
                                 "env": [
@@ -370,32 +408,24 @@
                                         }
                                         }
                                     },
                                     },
                                     {
                                     {
-                                        "name": "EAP_HTTPS_KEYSTORE_DIR",
+                                        "name": "HTTPS_KEYSTORE_DIR",
                                         "value": "/etc/eap-secret-volume"
                                         "value": "/etc/eap-secret-volume"
                                     },
                                     },
                                     {
                                     {
-                                        "name": "EAP_HTTPS_KEYSTORE",
+                                        "name": "HTTPS_KEYSTORE",
                                         "value": "${HTTPS_KEYSTORE}"
                                         "value": "${HTTPS_KEYSTORE}"
                                     },
                                     },
                                     {
                                     {
-                                        "name": "EAP_HTTPS_NAME",
-                                        "value": "${HTTPS_NAME}"
+                                        "name": "HTTPS_KEYSTORE_TYPE",
+                                        "value": "${HTTPS_KEYSTORE_TYPE}"
                                     },
                                     },
                                     {
                                     {
-                                        "name": "EAP_HTTPS_PASSWORD",
-                                        "value": "${HTTPS_PASSWORD}"
-                                    },
-                                    {
-                                        "name": "HORNETQ_CLUSTER_PASSWORD",
-                                        "value": "${HORNETQ_CLUSTER_PASSWORD}"
-                                    },
-                                    {
-                                        "name": "HORNETQ_QUEUES",
-                                        "value": "${HORNETQ_QUEUES}"
+                                        "name": "HTTPS_NAME",
+                                        "value": "${HTTPS_NAME}"
                                     },
                                     },
                                     {
                                     {
-                                        "name": "HORNETQ_TOPICS",
-                                        "value": "${HORNETQ_TOPICS}"
+                                        "name": "HTTPS_PASSWORD",
+                                        "value": "${HTTPS_PASSWORD}"
                                     },
                                     },
                                     {
                                     {
                                         "name": "JGROUPS_ENCRYPT_SECRET",
                                         "name": "JGROUPS_ENCRYPT_SECRET",
@@ -420,6 +450,38 @@
                                     {
                                     {
                                         "name": "JGROUPS_CLUSTER_PASSWORD",
                                         "name": "JGROUPS_CLUSTER_PASSWORD",
                                         "value": "${JGROUPS_CLUSTER_PASSWORD}"
                                         "value": "${JGROUPS_CLUSTER_PASSWORD}"
+                                    },
+                                    {
+                                        "name": "SSO_ADMIN_USERNAME",
+                                        "value": "${SSO_ADMIN_USERNAME}"
+                                    },
+                                    {
+                                        "name": "SSO_ADMIN_PASSWORD",
+                                        "value": "${SSO_ADMIN_PASSWORD}"
+                                    },
+                                    {
+                                        "name": "SSO_REALM",
+                                        "value": "${SSO_REALM}"
+                                    },
+                                    {
+                                        "name": "SSO_SERVICE_USERNAME",
+                                        "value": "${SSO_SERVICE_USERNAME}"
+                                    },
+                                    {
+                                        "name": "SSO_SERVICE_PASSWORD",
+                                        "value": "${SSO_SERVICE_PASSWORD}"
+                                    },
+                                    {
+                                        "name": "SSO_TRUSTSTORE",
+                                        "value": "${SSO_TRUSTSTORE}"
+                                    },
+                                    {
+                                        "name": "SSO_TRUSTSTORE_DIR",
+                                        "value": "/etc/sso-secret-volume"
+                                    },
+                                    {
+                                        "name": "SSO_TRUSTSTORE_PASSWORD",
+                                        "value": "${SSO_TRUSTSTORE_PASSWORD}"
                                     }
                                     }
                                 ]
                                 ]
                             }
                             }
@@ -436,6 +498,12 @@
                                 "secret": {
                                 "secret": {
                                     "secretName": "${JGROUPS_ENCRYPT_SECRET}"
                                     "secretName": "${JGROUPS_ENCRYPT_SECRET}"
                                 }
                                 }
+                            },
+                            {
+                                "name": "sso-truststore-volume",
+                                "secret": {
+                                    "secretName": "${SSO_TRUSTSTORE_SECRET}"
+                                }
                             }
                             }
                         ]
                         ]
                     }
                     }

+ 139 - 47
roles/openshift_examples/files/examples/v1.2/xpaas-templates/sso70-mysql-persistent.json

@@ -6,13 +6,13 @@
             "description": "Application template for SSO 7.0 MySQL applications with persistent storage",
             "description": "Application template for SSO 7.0 MySQL applications with persistent storage",
             "iconClass" : "icon-jboss",
             "iconClass" : "icon-jboss",
             "tags" : "sso,keycloak,mysql,java,database,jboss,xpaas",
             "tags" : "sso,keycloak,mysql,java,database,jboss,xpaas",
-            "version" : "1.3"
+            "version" : "1.3.2"
         },
         },
         "name": "sso70-mysql-persistent"
         "name": "sso70-mysql-persistent"
     },
     },
     "labels": {
     "labels": {
         "template": "sso70-mysql-persistent",
         "template": "sso70-mysql-persistent",
-        "xpaas" : "1.3.0"
+        "xpaas" : "1.3.2"
     },
     },
     "parameters": [
     "parameters": [
         {
         {
@@ -46,6 +46,12 @@
             "required": true
             "required": true
         },
         },
         {
         {
+            "description": "The name of the service account to use for the deployment.  The service account should be configured to allow useage of the secret(s) specified by HTTPS_SECRET and JGROUPS_ENCRYPT_SECRET.",
+            "name": "SERVICE_ACCOUNT_NAME",
+            "value": "sso-service-account",
+            "required": true
+        },
+        {
             "description": "The name of the secret containing the keystore file",
             "description": "The name of the secret containing the keystore file",
             "name": "HTTPS_SECRET",
             "name": "HTTPS_SECRET",
             "value": "sso-app-secret",
             "value": "sso-app-secret",
@@ -58,15 +64,21 @@
             "required": false
             "required": false
         },
         },
         {
         {
-            "description": "The name associated with the server certificate",
+            "description": "The type of the keystore file (JKS or JCEKS)",
+            "name": "HTTPS_KEYSTORE_TYPE",
+            "value": "",
+            "required": false
+        },
+        {
+            "description": "The name associated with the server certificate (e.g. jboss)",
             "name": "HTTPS_NAME",
             "name": "HTTPS_NAME",
-            "value": "jboss",
+            "value": "",
             "required": false
             "required": false
         },
         },
         {
         {
-            "description": "The password for the keystore and certificate",
+            "description": "The password for the keystore and certificate (e.g. mykeystorepass)",
             "name": "HTTPS_PASSWORD",
             "name": "HTTPS_PASSWORD",
-            "value": "mykeystorepass",
+            "value": "",
             "required": false
             "required": false
         },
         },
         {
         {
@@ -110,13 +122,6 @@
             "required": false
             "required": false
         },
         },
         {
         {
-            "description": "HornetQ cluster admin password",
-            "name": "HORNETQ_CLUSTER_PASSWORD",
-            "from": "[a-zA-Z0-9]{8}",
-            "generate": "expression",
-            "required": true
-        },
-        {
             "description": "Database user name",
             "description": "Database user name",
             "name": "DB_USERNAME",
             "name": "DB_USERNAME",
             "from": "user[a-zA-Z0-9]{3}",
             "from": "user[a-zA-Z0-9]{3}",
@@ -131,18 +136,6 @@
             "required": true
             "required": true
         },
         },
         {
         {
-            "description": "Queue names",
-            "name": "HORNETQ_QUEUES",
-            "value": "",
-            "required": false
-        },
-        {
-            "description": "Topic names",
-            "name": "HORNETQ_TOPICS",
-            "value": "",
-            "required": false
-        },
-        {
             "description": "Size of persistent storage for database volume.",
             "description": "Size of persistent storage for database volume.",
             "name": "VOLUME_CAPACITY",
             "name": "VOLUME_CAPACITY",
             "value": "512Mi",
             "value": "512Mi",
@@ -151,7 +144,7 @@
         {
         {
             "description": "The name of the secret containing the keystore file",
             "description": "The name of the secret containing the keystore file",
             "name": "JGROUPS_ENCRYPT_SECRET",
             "name": "JGROUPS_ENCRYPT_SECRET",
-            "value": "eap-app-secret",
+            "value": "sso-app-secret",
             "required": false
             "required": false
         },
         },
         {
         {
@@ -161,13 +154,13 @@
             "required": false
             "required": false
         },
         },
         {
         {
-            "description": "The name associated with the server certificate",
+            "description": "The name associated with the server certificate (e.g. secret-key)",
             "name": "JGROUPS_ENCRYPT_NAME",
             "name": "JGROUPS_ENCRYPT_NAME",
             "value": "",
             "value": "",
             "required": false
             "required": false
         },
         },
         {
         {
-            "description": "The password for the keystore and certificate",
+            "description": "The password for the keystore and certificate (e.g. password)",
             "name": "JGROUPS_ENCRYPT_PASSWORD",
             "name": "JGROUPS_ENCRYPT_PASSWORD",
             "value": "",
             "value": "",
             "required": false
             "required": false
@@ -184,6 +177,54 @@
             "name": "IMAGE_STREAM_NAMESPACE",
             "name": "IMAGE_STREAM_NAMESPACE",
             "value": "openshift",
             "value": "openshift",
             "required": true
             "required": true
+        },
+        {
+            "description": "SSO Server admin username",
+            "name": "SSO_ADMIN_USERNAME",
+            "value": "admin",
+            "required": false
+        },
+        {
+            "description": "SSO Server admin  password",
+            "name": "SSO_ADMIN_PASSWORD",
+            "value": "admin",
+            "required": false
+        },
+        {
+            "description": "Realm to be created in the SSO server (e.g. demo).",
+            "name": "SSO_REALM",
+            "value": "",
+            "required": false
+        },
+        {
+            "description": "The username used to access the SSO service.  This is used by clients to create the appliction client(s) within the specified SSO realm.",
+            "name": "SSO_SERVICE_USERNAME",
+            "value": "",
+            "required": false
+        },
+        {
+            "description": "The password for the SSO service user.",
+            "name": "SSO_SERVICE_PASSWORD",
+            "value": "",
+            "required": false
+        },
+        {
+            "description": "The name of the truststore file within the secret (e.g. truststore.jks)",
+            "name": "SSO_TRUSTSTORE",
+            "value": "",
+            "required": false
+        },
+        {
+            "description": "The password for the truststore and certificate (e.g. mykeystorepass)",
+            "name": "SSO_TRUSTSTORE_PASSWORD",
+            "value": "",
+            "required": false
+        },
+        {
+            "description": "The name of the secret containing the truststore file (e.g. truststore-secret). Used for volume secretName",
+            "name": "SSO_TRUSTSTORE_SECRET",
+            "value": "sso-app-secret",
+            "required": false
         }
         }
     ],
     ],
     "objects": [
     "objects": [
@@ -326,7 +367,7 @@
                              "from": {
                              "from": {
                                 "kind": "ImageStreamTag",
                                 "kind": "ImageStreamTag",
                                 "namespace": "${IMAGE_STREAM_NAMESPACE}",
                                 "namespace": "${IMAGE_STREAM_NAMESPACE}",
-                                "name": "redhat-sso70-openshift:1.3-TP"
+                                "name": "redhat-sso70-openshift:1.3"
                             }
                             }
                         }
                         }
                     },
                     },
@@ -347,8 +388,8 @@
                         }
                         }
                     },
                     },
                     "spec": {
                     "spec": {
-                        "serviceAccountName": "sso-service-account",
-                        "terminationGracePeriodSeconds": 60,
+                        "serviceAccountName": "${SERVICE_ACCOUNT_NAME}",
+                        "terminationGracePeriodSeconds": 75,
                         "containers": [
                         "containers": [
                             {
                             {
                                 "name": "${APPLICATION_NAME}",
                                 "name": "${APPLICATION_NAME}",
@@ -364,8 +405,24 @@
                                         "name": "eap-jgroups-keystore-volume",
                                         "name": "eap-jgroups-keystore-volume",
                                         "mountPath": "/etc/jgroups-encrypt-secret-volume",
                                         "mountPath": "/etc/jgroups-encrypt-secret-volume",
                                         "readOnly": true
                                         "readOnly": true
+                                    },
+                                    {
+                                        "name": "sso-truststore-volume",
+                                        "mountPath": "/etc/sso-secret-volume",
+                                        "readOnly": true
                                     }
                                     }
                                 ],
                                 ],
+                                "lifecycle": {
+                                    "preStop": {
+                                        "exec": {
+                                            "command": [
+                                                "/opt/eap/bin/jboss-cli.sh",
+                                                "-c",
+                                                ":shutdown(timeout=60)"
+                                            ]
+                                        }
+                                    }
+                                },
                                 "livenessProbe": {
                                 "livenessProbe": {
                                     "exec": {
                                     "exec": {
                                         "command": [
                                         "command": [
@@ -399,6 +456,11 @@
                                         "name": "https",
                                         "name": "https",
                                         "containerPort": 8443,
                                         "containerPort": 8443,
                                         "protocol": "TCP"
                                         "protocol": "TCP"
+                                    },
+                                    {
+                                        "name": "ping",
+                                        "containerPort": 8888,
+                                        "protocol": "TCP"
                                     }
                                     }
                                 ],
                                 ],
                                 "env": [
                                 "env": [
@@ -451,32 +513,24 @@
                                         }
                                         }
                                     },
                                     },
                                     {
                                     {
-                                        "name": "EAP_HTTPS_KEYSTORE_DIR",
+                                        "name": "HTTPS_KEYSTORE_DIR",
                                         "value": "/etc/eap-secret-volume"
                                         "value": "/etc/eap-secret-volume"
                                     },
                                     },
                                     {
                                     {
-                                        "name": "EAP_HTTPS_KEYSTORE",
+                                        "name": "HTTPS_KEYSTORE",
                                         "value": "${HTTPS_KEYSTORE}"
                                         "value": "${HTTPS_KEYSTORE}"
                                     },
                                     },
                                     {
                                     {
-                                        "name": "EAP_HTTPS_NAME",
-                                        "value": "${HTTPS_NAME}"
-                                    },
-                                    {
-                                        "name": "EAP_HTTPS_PASSWORD",
-                                        "value": "${HTTPS_PASSWORD}"
-                                    },
-                                    {
-                                        "name": "HORNETQ_CLUSTER_PASSWORD",
-                                        "value": "${HORNETQ_CLUSTER_PASSWORD}"
+                                        "name": "HTTPS_KEYSTORE_TYPE",
+                                        "value": "${HTTPS_KEYSTORE_TYPE}"
                                     },
                                     },
                                     {
                                     {
-                                        "name": "HORNETQ_QUEUES",
-                                        "value": "${HORNETQ_QUEUES}"
+                                        "name": "HTTPS_NAME",
+                                        "value": "${HTTPS_NAME}"
                                     },
                                     },
                                     {
                                     {
-                                        "name": "HORNETQ_TOPICS",
-                                        "value": "${HORNETQ_TOPICS}"
+                                        "name": "HTTPS_PASSWORD",
+                                        "value": "${HTTPS_PASSWORD}"
                                     },
                                     },
                                     {
                                     {
                                         "name": "JGROUPS_ENCRYPT_SECRET",
                                         "name": "JGROUPS_ENCRYPT_SECRET",
@@ -501,6 +555,38 @@
                                     {
                                     {
                                         "name": "JGROUPS_CLUSTER_PASSWORD",
                                         "name": "JGROUPS_CLUSTER_PASSWORD",
                                         "value": "${JGROUPS_CLUSTER_PASSWORD}"
                                         "value": "${JGROUPS_CLUSTER_PASSWORD}"
+                                    },
+                                    {
+                                        "name": "SSO_ADMIN_USERNAME",
+                                        "value": "${SSO_ADMIN_USERNAME}"
+                                    },
+                                    {
+                                        "name": "SSO_ADMIN_PASSWORD",
+                                        "value": "${SSO_ADMIN_PASSWORD}"
+                                    },
+                                    {
+                                        "name": "SSO_REALM",
+                                        "value": "${SSO_REALM}"
+                                    },
+                                    {
+                                        "name": "SSO_SERVICE_USERNAME",
+                                        "value": "${SSO_SERVICE_USERNAME}"
+                                    },
+                                    {
+                                        "name": "SSO_SERVICE_PASSWORD",
+                                        "value": "${SSO_SERVICE_PASSWORD}"
+                                    },
+                                    {
+                                        "name": "SSO_TRUSTSTORE",
+                                        "value": "${SSO_TRUSTSTORE}"
+                                    },
+                                    {
+                                        "name": "SSO_TRUSTSTORE_DIR",
+                                        "value": "/etc/sso-secret-volume"
+                                    },
+                                    {
+                                        "name": "SSO_TRUSTSTORE_PASSWORD",
+                                        "value": "${SSO_TRUSTSTORE_PASSWORD}"
                                     }
                                     }
                                 ]
                                 ]
                             }
                             }
@@ -517,6 +603,12 @@
                                 "secret": {
                                 "secret": {
                                     "secretName": "${JGROUPS_ENCRYPT_SECRET}"
                                     "secretName": "${JGROUPS_ENCRYPT_SECRET}"
                                 }
                                 }
+                            },
+                            {
+                                "name": "sso-truststore-volume",
+                                "secret": {
+                                    "secretName": "${SSO_TRUSTSTORE_SECRET}"
+                                }
                             }
                             }
                         ]
                         ]
                     }
                     }

+ 139 - 47
roles/openshift_examples/files/examples/v1.2/xpaas-templates/sso70-mysql.json

@@ -6,13 +6,13 @@
             "description": "Application template for SSO 7.0 MySQL applications",
             "description": "Application template for SSO 7.0 MySQL applications",
             "iconClass" : "icon-jboss",
             "iconClass" : "icon-jboss",
             "tags" : "sso,keycloak,mysql,java,database,jboss,xpaas",
             "tags" : "sso,keycloak,mysql,java,database,jboss,xpaas",
-            "version" : "1.3"
+            "version" : "1.3.2"
         },
         },
         "name": "sso70-mysql"
         "name": "sso70-mysql"
     },
     },
     "labels": {
     "labels": {
         "template": "sso70-mysql",
         "template": "sso70-mysql",
-        "xpaas" : "1.3.0"
+        "xpaas" : "1.3.2"
     },
     },
     "parameters": [
     "parameters": [
         {
         {
@@ -46,6 +46,12 @@
             "required": true
             "required": true
         },
         },
         {
         {
+            "description": "The name of the service account to use for the deployment.  The service account should be configured to allow useage of the secret(s) specified by HTTPS_SECRET and JGROUPS_ENCRYPT_SECRET.",
+            "name": "SERVICE_ACCOUNT_NAME",
+            "value": "sso-service-account",
+            "required": true
+        },
+        {
             "description": "The name of the secret containing the keystore file",
             "description": "The name of the secret containing the keystore file",
             "name": "HTTPS_SECRET",
             "name": "HTTPS_SECRET",
             "value": "sso-app-secret",
             "value": "sso-app-secret",
@@ -58,15 +64,21 @@
             "required": false
             "required": false
         },
         },
         {
         {
-            "description": "The name associated with the server certificate",
+            "description": "The type of the keystore file (JKS or JCEKS)",
+            "name": "HTTPS_KEYSTORE_TYPE",
+            "value": "",
+            "required": false
+        },
+        {
+            "description": "The name associated with the server certificate (e.g. jboss)",
             "name": "HTTPS_NAME",
             "name": "HTTPS_NAME",
-            "value": "jboss",
+            "value": "",
             "required": false
             "required": false
         },
         },
         {
         {
-            "description": "The password for the keystore and certificate",
+            "description": "The password for the keystore and certificate (e.g. mykeystorepass)",
             "name": "HTTPS_PASSWORD",
             "name": "HTTPS_PASSWORD",
-            "value": "mykeystorepass",
+            "value": "",
             "required": false
             "required": false
         },
         },
         {
         {
@@ -110,13 +122,6 @@
             "required": false
             "required": false
         },
         },
         {
         {
-            "description": "HornetQ cluster admin password",
-            "name": "HORNETQ_CLUSTER_PASSWORD",
-            "from": "[a-zA-Z0-9]{8}",
-            "generate": "expression",
-            "required": true
-        },
-        {
             "description": "Database user name",
             "description": "Database user name",
             "name": "DB_USERNAME",
             "name": "DB_USERNAME",
             "from": "user[a-zA-Z0-9]{3}",
             "from": "user[a-zA-Z0-9]{3}",
@@ -131,21 +136,9 @@
             "required": true
             "required": true
         },
         },
         {
         {
-            "description": "Queue names",
-            "name": "HORNETQ_QUEUES",
-            "value": "",
-            "required": false
-        },
-        {
-            "description": "Topic names",
-            "name": "HORNETQ_TOPICS",
-            "value": "",
-            "required": false
-        },
-        {
             "description": "The name of the secret containing the keystore file",
             "description": "The name of the secret containing the keystore file",
             "name": "JGROUPS_ENCRYPT_SECRET",
             "name": "JGROUPS_ENCRYPT_SECRET",
-            "value": "eap-app-secret",
+            "value": "sso-app-secret",
             "required": false
             "required": false
         },
         },
         {
         {
@@ -155,13 +148,13 @@
             "required": false
             "required": false
         },
         },
         {
         {
-            "description": "The name associated with the server certificate",
+            "description": "The name associated with the server certificate (e.g. secret-key)",
             "name": "JGROUPS_ENCRYPT_NAME",
             "name": "JGROUPS_ENCRYPT_NAME",
             "value": "",
             "value": "",
             "required": false
             "required": false
         },
         },
         {
         {
-            "description": "The password for the keystore and certificate",
+            "description": "The password for the keystore and certificate (e.g. password)",
             "name": "JGROUPS_ENCRYPT_PASSWORD",
             "name": "JGROUPS_ENCRYPT_PASSWORD",
             "value": "",
             "value": "",
             "required": false
             "required": false
@@ -178,6 +171,54 @@
             "name": "IMAGE_STREAM_NAMESPACE",
             "name": "IMAGE_STREAM_NAMESPACE",
             "value": "openshift",
             "value": "openshift",
             "required": true
             "required": true
+        },
+        {
+            "description": "SSO Server admin username",
+            "name": "SSO_ADMIN_USERNAME",
+            "value": "admin",
+            "required": false
+        },
+        {
+            "description": "SSO Server admin  password",
+            "name": "SSO_ADMIN_PASSWORD",
+            "value": "admin",
+            "required": false
+        },
+        {
+            "description": "Realm to be created in the SSO server (e.g. demo).",
+            "name": "SSO_REALM",
+            "value": "",
+            "required": false
+        },
+        {
+            "description": "The username used to access the SSO service.  This is used by clients to create the appliction client(s) within the specified SSO realm.",
+            "name": "SSO_SERVICE_USERNAME",
+            "value": "",
+            "required": false
+        },
+        {
+            "description": "The password for the SSO service user.",
+            "name": "SSO_SERVICE_PASSWORD",
+            "value": "",
+            "required": false
+        },
+        {
+            "description": "The name of the truststore file within the secret (e.g. truststore.jks)",
+            "name": "SSO_TRUSTSTORE",
+            "value": "",
+            "required": false
+        },
+        {
+            "description": "The password for the truststore and certificate (e.g. mykeystorepass)",
+            "name": "SSO_TRUSTSTORE_PASSWORD",
+            "value": "",
+            "required": false
+        },
+        {
+            "description": "The name of the secret containing the truststore file (e.g. truststore-secret). Used for volume secretName",
+            "name": "SSO_TRUSTSTORE_SECRET",
+            "value": "sso-app-secret",
+            "required": false
         }
         }
     ],
     ],
     "objects": [
     "objects": [
@@ -326,7 +367,7 @@
                              "from": {
                              "from": {
                                 "kind": "ImageStreamTag",
                                 "kind": "ImageStreamTag",
                                 "namespace": "${IMAGE_STREAM_NAMESPACE}",
                                 "namespace": "${IMAGE_STREAM_NAMESPACE}",
-                                "name": "redhat-sso70-openshift:1.3-TP"
+                                "name": "redhat-sso70-openshift:1.3"
                             }
                             }
                         }
                         }
                     },
                     },
@@ -348,8 +389,8 @@
                         }
                         }
                     },
                     },
                     "spec": {
                     "spec": {
-                        "serviceAccountName": "sso-service-account",
-                        "terminationGracePeriodSeconds": 60,
+                        "serviceAccountName": "${SERVICE_ACCOUNT_NAME}",
+                        "terminationGracePeriodSeconds": 75,
                         "containers": [
                         "containers": [
                             {
                             {
                                 "name": "${APPLICATION_NAME}",
                                 "name": "${APPLICATION_NAME}",
@@ -365,8 +406,24 @@
                                         "name": "eap-jgroups-keystore-volume",
                                         "name": "eap-jgroups-keystore-volume",
                                         "mountPath": "/etc/jgroups-encrypt-secret-volume",
                                         "mountPath": "/etc/jgroups-encrypt-secret-volume",
                                         "readOnly": true
                                         "readOnly": true
+                                    },
+                                    {
+                                        "name": "sso-truststore-volume",
+                                        "mountPath": "/etc/sso-secret-volume",
+                                        "readOnly": true
                                     }
                                     }
                                 ],
                                 ],
+                                "lifecycle": {
+                                    "preStop": {
+                                        "exec": {
+                                            "command": [
+                                                "/opt/eap/bin/jboss-cli.sh",
+                                                "-c",
+                                                ":shutdown(timeout=60)"
+                                            ]
+                                        }
+                                    }
+                                },
                                 "livenessProbe": {
                                 "livenessProbe": {
                                     "exec": {
                                     "exec": {
                                         "command": [
                                         "command": [
@@ -400,6 +457,11 @@
                                         "name": "https",
                                         "name": "https",
                                         "containerPort": 8443,
                                         "containerPort": 8443,
                                         "protocol": "TCP"
                                         "protocol": "TCP"
+                                    },
+                                    {
+                                        "name": "ping",
+                                        "containerPort": 8888,
+                                        "protocol": "TCP"
                                     }
                                     }
                                 ],
                                 ],
                                 "env": [
                                 "env": [
@@ -452,32 +514,24 @@
                                         }
                                         }
                                     },
                                     },
                                     {
                                     {
-                                        "name": "EAP_HTTPS_KEYSTORE_DIR",
+                                        "name": "HTTPS_KEYSTORE_DIR",
                                         "value": "/etc/eap-secret-volume"
                                         "value": "/etc/eap-secret-volume"
                                     },
                                     },
                                     {
                                     {
-                                        "name": "EAP_HTTPS_KEYSTORE",
+                                        "name": "HTTPS_KEYSTORE",
                                         "value": "${HTTPS_KEYSTORE}"
                                         "value": "${HTTPS_KEYSTORE}"
                                     },
                                     },
                                     {
                                     {
-                                        "name": "EAP_HTTPS_NAME",
-                                        "value": "${HTTPS_NAME}"
-                                    },
-                                    {
-                                        "name": "EAP_HTTPS_PASSWORD",
-                                        "value": "${HTTPS_PASSWORD}"
-                                    },
-                                    {
-                                        "name": "HORNETQ_CLUSTER_PASSWORD",
-                                        "value": "${HORNETQ_CLUSTER_PASSWORD}"
+                                        "name": "HTTPS_KEYSTORE_TYPE",
+                                        "value": "${HTTPS_KEYSTORE_TYPE}"
                                     },
                                     },
                                     {
                                     {
-                                        "name": "HORNETQ_QUEUES",
-                                        "value": "${HORNETQ_QUEUES}"
+                                        "name": "HTTPS_NAME",
+                                        "value": "${HTTPS_NAME}"
                                     },
                                     },
                                     {
                                     {
-                                        "name": "HORNETQ_TOPICS",
-                                        "value": "${HORNETQ_TOPICS}"
+                                        "name": "HTTPS_PASSWORD",
+                                        "value": "${HTTPS_PASSWORD}"
                                     },
                                     },
                                     {
                                     {
                                         "name": "JGROUPS_ENCRYPT_SECRET",
                                         "name": "JGROUPS_ENCRYPT_SECRET",
@@ -502,6 +556,38 @@
                                     {
                                     {
                                         "name": "JGROUPS_CLUSTER_PASSWORD",
                                         "name": "JGROUPS_CLUSTER_PASSWORD",
                                         "value": "${JGROUPS_CLUSTER_PASSWORD}"
                                         "value": "${JGROUPS_CLUSTER_PASSWORD}"
+                                    },
+                                    {
+                                        "name": "SSO_ADMIN_USERNAME",
+                                        "value": "${SSO_ADMIN_USERNAME}"
+                                    },
+                                    {
+                                        "name": "SSO_ADMIN_PASSWORD",
+                                        "value": "${SSO_ADMIN_PASSWORD}"
+                                    },
+                                    {
+                                        "name": "SSO_REALM",
+                                        "value": "${SSO_REALM}"
+                                    },
+                                    {
+                                        "name": "SSO_SERVICE_USERNAME",
+                                        "value": "${SSO_SERVICE_USERNAME}"
+                                    },
+                                    {
+                                        "name": "SSO_SERVICE_PASSWORD",
+                                        "value": "${SSO_SERVICE_PASSWORD}"
+                                    },
+                                    {
+                                        "name": "SSO_TRUSTSTORE",
+                                        "value": "${SSO_TRUSTSTORE}"
+                                    },
+                                    {
+                                        "name": "SSO_TRUSTSTORE_DIR",
+                                        "value": "/etc/sso-secret-volume"
+                                    },
+                                    {
+                                        "name": "SSO_TRUSTSTORE_PASSWORD",
+                                        "value": "${SSO_TRUSTSTORE_PASSWORD}"
                                     }
                                     }
                                 ]
                                 ]
                             }
                             }
@@ -518,6 +604,12 @@
                                 "secret": {
                                 "secret": {
                                     "secretName": "${JGROUPS_ENCRYPT_SECRET}"
                                     "secretName": "${JGROUPS_ENCRYPT_SECRET}"
                                 }
                                 }
+                            },
+                            {
+                                "name": "sso-truststore-volume",
+                                "secret": {
+                                    "secretName": "${SSO_TRUSTSTORE_SECRET}"
+                                }
                             }
                             }
                         ]
                         ]
                     }
                     }

+ 143 - 47
roles/openshift_examples/files/examples/v1.2/xpaas-templates/sso70-postgresql-persistent.json

@@ -6,13 +6,13 @@
             "description": "Application template for SSO 7.0 PostgreSQL applications with persistent storage",
             "description": "Application template for SSO 7.0 PostgreSQL applications with persistent storage",
             "iconClass" : "icon-jboss",
             "iconClass" : "icon-jboss",
             "tags" : "sso,keycloak,postrgresql,java,database,jboss,xpaas",
             "tags" : "sso,keycloak,postrgresql,java,database,jboss,xpaas",
-            "version" : "1.3"
+            "version" : "1.3.2"
         },
         },
         "name": "sso70-postgresql-persistent"
         "name": "sso70-postgresql-persistent"
     },
     },
     "labels": {
     "labels": {
         "template": "sso70-postgresql-persistent",
         "template": "sso70-postgresql-persistent",
-        "xpaas" : "1.3.0"
+        "xpaas" : "1.3.2"
     },
     },
     "parameters": [
     "parameters": [
         {
         {
@@ -46,6 +46,12 @@
             "required": true
             "required": true
         },
         },
         {
         {
+            "description": "The name of the service account to use for the deployment.  The service account should be configured to allow useage of the secret(s) specified by HTTPS_SECRET and JGROUPS_ENCRYPT_SECRET.",
+            "name": "SERVICE_ACCOUNT_NAME",
+            "value": "sso-service-account",
+            "required": true
+        },
+        {
             "description": "The name of the secret containing the keystore file",
             "description": "The name of the secret containing the keystore file",
             "name": "HTTPS_SECRET",
             "name": "HTTPS_SECRET",
             "value": "sso-app-secret",
             "value": "sso-app-secret",
@@ -58,15 +64,21 @@
             "required": false
             "required": false
         },
         },
         {
         {
-            "description": "The name associated with the server certificate",
+            "description": "The type of the keystore file (JKS or JCEKS)",
+            "name": "HTTPS_KEYSTORE_TYPE",
+            "value": "",
+            "required": false
+        },
+        {
+            "description": "The name associated with the server certificate (e.g. jboss)",
             "name": "HTTPS_NAME",
             "name": "HTTPS_NAME",
-            "value": "jboss",
+            "value": "",
             "required": false
             "required": false
         },
         },
         {
         {
-            "description": "The password for the keystore and certificate",
+            "description": "The password for the keystore and certificate (e.g. mykeystorepass)",
             "name": "HTTPS_PASSWORD",
             "name": "HTTPS_PASSWORD",
-            "value": "mykeystorepass",
+            "value": "",
             "required": false
             "required": false
         },
         },
         {
         {
@@ -95,13 +107,6 @@
             "required": false
             "required": false
         },
         },
         {
         {
-            "description": "HornetQ cluster admin password",
-            "name": "HORNETQ_CLUSTER_PASSWORD",
-            "from": "[a-zA-Z0-9]{8}",
-            "generate": "expression",
-            "required": true
-        },
-        {
             "description": "Database user name",
             "description": "Database user name",
             "name": "DB_USERNAME",
             "name": "DB_USERNAME",
             "from": "user[a-zA-Z0-9]{3}",
             "from": "user[a-zA-Z0-9]{3}",
@@ -116,18 +121,6 @@
             "required": true
             "required": true
         },
         },
         {
         {
-            "description": "Queue names",
-            "name": "HORNETQ_QUEUES",
-            "value": "",
-            "required": false
-        },
-        {
-            "description": "Topic names",
-            "name": "HORNETQ_TOPICS",
-            "value": "",
-            "required": false
-        },
-        {
             "description": "Size of persistent storage for database volume.",
             "description": "Size of persistent storage for database volume.",
             "name": "VOLUME_CAPACITY",
             "name": "VOLUME_CAPACITY",
             "value": "512Mi",
             "value": "512Mi",
@@ -136,7 +129,7 @@
         {
         {
             "description": "The name of the secret containing the keystore file",
             "description": "The name of the secret containing the keystore file",
             "name": "JGROUPS_ENCRYPT_SECRET",
             "name": "JGROUPS_ENCRYPT_SECRET",
-            "value": "eap-app-secret",
+            "value": "sso-app-secret",
             "required": false
             "required": false
         },
         },
         {
         {
@@ -146,13 +139,13 @@
             "required": false
             "required": false
         },
         },
         {
         {
-            "description": "The name associated with the server certificate",
+            "description": "The name associated with the server certificate (e.g. secret-key)",
             "name": "JGROUPS_ENCRYPT_NAME",
             "name": "JGROUPS_ENCRYPT_NAME",
             "value": "",
             "value": "",
             "required": false
             "required": false
         },
         },
         {
         {
-            "description": "The password for the keystore and certificate",
+            "description": "The password for the keystore and certificate (e.g. password)",
             "name": "JGROUPS_ENCRYPT_PASSWORD",
             "name": "JGROUPS_ENCRYPT_PASSWORD",
             "value": "",
             "value": "",
             "required": false
             "required": false
@@ -169,6 +162,54 @@
             "name": "IMAGE_STREAM_NAMESPACE",
             "name": "IMAGE_STREAM_NAMESPACE",
             "value": "openshift",
             "value": "openshift",
             "required": true
             "required": true
+        },
+        {
+            "description": "SSO Server admin username",
+            "name": "SSO_ADMIN_USERNAME",
+            "value": "admin",
+            "required": false
+        },
+        {
+            "description": "SSO Server admin  password",
+            "name": "SSO_ADMIN_PASSWORD",
+            "value": "admin",
+            "required": false
+        },
+        {
+            "description": "Realm to be created in the SSO server (e.g. demo).",
+            "name": "SSO_REALM",
+            "value": "",
+            "required": false
+        },
+        {
+            "description": "The username used to access the SSO service.  This is used by clients to create the appliction client(s) within the specified SSO realm.",
+            "name": "SSO_SERVICE_USERNAME",
+            "value": "",
+            "required": false
+        },
+        {
+            "description": "The password for the SSO service user.",
+            "name": "SSO_SERVICE_PASSWORD",
+            "value": "",
+            "required": false
+        },
+        {
+            "description": "The name of the truststore file within the secret (e.g. truststore.jks)",
+            "name": "SSO_TRUSTSTORE",
+            "value": "",
+            "required": false
+        },
+        {
+            "description": "The password for the truststore and certificate (e.g. mykeystorepass)",
+            "name": "SSO_TRUSTSTORE_PASSWORD",
+            "value": "",
+            "required": false
+        },
+        {
+            "description": "The name of the secret containing the truststore file (e.g. truststore-secret). Used for volume secretName",
+            "name": "SSO_TRUSTSTORE_SECRET",
+            "value": "sso-app-secret",
+            "required": false
         }
         }
     ],
     ],
     "objects": [
     "objects": [
@@ -311,7 +352,7 @@
                              "from": {
                              "from": {
                                 "kind": "ImageStreamTag",
                                 "kind": "ImageStreamTag",
                                 "namespace": "${IMAGE_STREAM_NAMESPACE}",
                                 "namespace": "${IMAGE_STREAM_NAMESPACE}",
-                                "name": "redhat-sso70-openshift:1.3-TP"
+                                "name": "redhat-sso70-openshift:1.3"
                             }
                             }
                         }
                         }
                     },
                     },
@@ -332,8 +373,8 @@
                         }
                         }
                     },
                     },
                     "spec": {
                     "spec": {
-                        "serviceAccountName": "sso-service-account",
-                        "terminationGracePeriodSeconds": 60,
+                        "serviceAccountName": "${SERVICE_ACCOUNT_NAME}",
+                        "terminationGracePeriodSeconds": 75,
                         "containers": [
                         "containers": [
                             {
                             {
                                 "name": "${APPLICATION_NAME}",
                                 "name": "${APPLICATION_NAME}",
@@ -349,8 +390,24 @@
                                         "name": "eap-jgroups-keystore-volume",
                                         "name": "eap-jgroups-keystore-volume",
                                         "mountPath": "/etc/jgroups-encrypt-secret-volume",
                                         "mountPath": "/etc/jgroups-encrypt-secret-volume",
                                         "readOnly": true
                                         "readOnly": true
+                                    },
+                                    {
+                                        "name": "sso-truststore-volume",
+                                        "mountPath": "/etc/sso-secret-volume",
+                                        "readOnly": true
                                     }
                                     }
                                 ],
                                 ],
+                                "lifecycle": {
+                                    "preStop": {
+                                        "exec": {
+                                            "command": [
+                                                "/opt/eap/bin/jboss-cli.sh",
+                                                "-c",
+                                                ":shutdown(timeout=60)"
+                                            ]
+                                        }
+                                    }
+                                },
                                 "livenessProbe": {
                                 "livenessProbe": {
                                     "exec": {
                                     "exec": {
                                         "command": [
                                         "command": [
@@ -384,6 +441,11 @@
                                         "name": "https",
                                         "name": "https",
                                         "containerPort": 8443,
                                         "containerPort": 8443,
                                         "protocol": "TCP"
                                         "protocol": "TCP"
+                                    },
+                                    {
+                                        "name": "ping",
+                                        "containerPort": 8888,
+                                        "protocol": "TCP"
                                     }
                                     }
                                 ],
                                 ],
                                 "env": [
                                 "env": [
@@ -436,32 +498,24 @@
                                         }
                                         }
                                     },
                                     },
                                     {
                                     {
-                                        "name": "EAP_HTTPS_KEYSTORE_DIR",
+                                        "name": "HTTPS_KEYSTORE_DIR",
                                         "value": "/etc/eap-secret-volume"
                                         "value": "/etc/eap-secret-volume"
                                     },
                                     },
                                     {
                                     {
-                                        "name": "EAP_HTTPS_KEYSTORE",
+                                        "name": "HTTPS_KEYSTORE",
                                         "value": "${HTTPS_KEYSTORE}"
                                         "value": "${HTTPS_KEYSTORE}"
                                     },
                                     },
                                     {
                                     {
-                                        "name": "EAP_HTTPS_NAME",
-                                        "value": "${HTTPS_NAME}"
-                                    },
-                                    {
-                                        "name": "EAP_HTTPS_PASSWORD",
-                                        "value": "${HTTPS_PASSWORD}"
-                                    },
-                                    {
-                                        "name": "HORNETQ_CLUSTER_PASSWORD",
-                                        "value": "${HORNETQ_CLUSTER_PASSWORD}"
+                                        "name": "HTTPS_KEYSTORE_TYPE",
+                                        "value": "${HTTPS_KEYSTORE_TYPE}"
                                     },
                                     },
                                     {
                                     {
-                                        "name": "HORNETQ_QUEUES",
-                                        "value": "${HORNETQ_QUEUES}"
+                                        "name": "HTTPS_NAME",
+                                        "value": "${HTTPS_NAME}"
                                     },
                                     },
                                     {
                                     {
-                                        "name": "HORNETQ_TOPICS",
-                                        "value": "${HORNETQ_TOPICS}"
+                                        "name": "HTTPS_PASSWORD",
+                                        "value": "${HTTPS_PASSWORD}"
                                     },
                                     },
                                     {
                                     {
                                         "name": "JGROUPS_ENCRYPT_SECRET",
                                         "name": "JGROUPS_ENCRYPT_SECRET",
@@ -486,6 +540,38 @@
                                     {
                                     {
                                         "name": "JGROUPS_CLUSTER_PASSWORD",
                                         "name": "JGROUPS_CLUSTER_PASSWORD",
                                         "value": "${JGROUPS_CLUSTER_PASSWORD}"
                                         "value": "${JGROUPS_CLUSTER_PASSWORD}"
+                                    },
+                                    {
+                                        "name": "SSO_ADMIN_USERNAME",
+                                        "value": "${SSO_ADMIN_USERNAME}"
+                                    },
+                                    {
+                                        "name": "SSO_ADMIN_PASSWORD",
+                                        "value": "${SSO_ADMIN_PASSWORD}"
+                                    },
+                                    {
+                                        "name": "SSO_REALM",
+                                        "value": "${SSO_REALM}"
+                                    },
+                                    {
+                                        "name": "SSO_SERVICE_USERNAME",
+                                        "value": "${SSO_SERVICE_USERNAME}"
+                                    },
+                                    {
+                                        "name": "SSO_SERVICE_PASSWORD",
+                                        "value": "${SSO_SERVICE_PASSWORD}"
+                                    },
+                                    {
+                                        "name": "SSO_TRUSTSTORE",
+                                        "value": "${SSO_TRUSTSTORE}"
+                                    },
+                                    {
+                                        "name": "SSO_TRUSTSTORE_DIR",
+                                        "value": "/etc/sso-secret-volume"
+                                    },
+                                    {
+                                        "name": "SSO_TRUSTSTORE_PASSWORD",
+                                        "value": "${SSO_TRUSTSTORE_PASSWORD}"
                                     }
                                     }
                                 ]
                                 ]
                             }
                             }
@@ -502,6 +588,12 @@
                                 "secret": {
                                 "secret": {
                                     "secretName": "${JGROUPS_ENCRYPT_SECRET}"
                                     "secretName": "${JGROUPS_ENCRYPT_SECRET}"
                                 }
                                 }
+                            },
+                            {
+                                "name": "sso-truststore-volume",
+                                "secret": {
+                                    "secretName": "${SSO_TRUSTSTORE_SECRET}"
+                                }
                             }
                             }
                         ]
                         ]
                     }
                     }
@@ -589,6 +681,10 @@
                                         "value": "${POSTGRESQL_MAX_CONNECTIONS}"
                                         "value": "${POSTGRESQL_MAX_CONNECTIONS}"
                                     },
                                     },
                                     {
                                     {
+                                        "name": "POSTGRESQL_MAX_PREPARED_TRANSACTIONS",
+                                        "value": "${POSTGRESQL_MAX_CONNECTIONS}"
+                                    },
+                                    {
                                         "name": "POSTGRESQL_SHARED_BUFFERS",
                                         "name": "POSTGRESQL_SHARED_BUFFERS",
                                         "value": "${POSTGRESQL_SHARED_BUFFERS}"
                                         "value": "${POSTGRESQL_SHARED_BUFFERS}"
                                     }
                                     }

+ 145 - 49
roles/openshift_examples/files/examples/v1.2/xpaas-templates/sso70-postgresql.json

@@ -6,13 +6,13 @@
             "description": "Application template for SSO 7.0 PostgreSQL applications",
             "description": "Application template for SSO 7.0 PostgreSQL applications",
             "iconClass" : "icon-jboss",
             "iconClass" : "icon-jboss",
             "tags" : "sso,keycloak,postrgresql,java,database,jboss,xpaas",
             "tags" : "sso,keycloak,postrgresql,java,database,jboss,xpaas",
-            "version" : "1.3"
+            "version" : "1.3.2"
         },
         },
         "name": "sso70-postgresql"
         "name": "sso70-postgresql"
     },
     },
     "labels": {
     "labels": {
         "template": "sso70-postgresql",
         "template": "sso70-postgresql",
-        "xpaas" : "1.3.0"
+        "xpaas" : "1.3.2"
     },
     },
     "parameters": [
     "parameters": [
         {
         {
@@ -46,6 +46,12 @@
             "required": true
             "required": true
         },
         },
         {
         {
+            "description": "The name of the service account to use for the deployment.  The service account should be configured to allow useage of the secret(s) specified by HTTPS_SECRET and JGROUPS_ENCRYPT_SECRET.",
+            "name": "SERVICE_ACCOUNT_NAME",
+            "value": "sso-service-account",
+            "required": true
+        },
+        {
             "description": "The name of the secret containing the keystore file",
             "description": "The name of the secret containing the keystore file",
             "name": "HTTPS_SECRET",
             "name": "HTTPS_SECRET",
             "value": "sso-app-secret",
             "value": "sso-app-secret",
@@ -58,15 +64,21 @@
             "required": false
             "required": false
         },
         },
         {
         {
-            "description": "The name associated with the server certificate",
+            "description": "The type of the keystore file (JKS or JCEKS)",
+            "name": "HTTPS_KEYSTORE_TYPE",
+            "value": "",
+            "required": false
+        },
+        {
+            "description": "The name associated with the server certificate (e.g. jboss)",
             "name": "HTTPS_NAME",
             "name": "HTTPS_NAME",
-            "value": "jboss",
+            "value": "",
             "required": false
             "required": false
         },
         },
         {
         {
-            "description": "The password for the keystore and certificate",
+            "description": "The password for the keystore and certificate (e.g. mykeystorepass)",
             "name": "HTTPS_PASSWORD",
             "name": "HTTPS_PASSWORD",
-            "value": "mykeystorepass",
+            "value": "",
             "required": false
             "required": false
         },
         },
         {
         {
@@ -95,13 +107,6 @@
             "required": false
             "required": false
         },
         },
         {
         {
-            "description": "HornetQ cluster admin password",
-            "name": "HORNETQ_CLUSTER_PASSWORD",
-            "from": "[a-zA-Z0-9]{8}",
-            "generate": "expression",
-            "required": true
-        },
-        {
             "description": "Database user name",
             "description": "Database user name",
             "name": "DB_USERNAME",
             "name": "DB_USERNAME",
             "from": "user[a-zA-Z0-9]{3}",
             "from": "user[a-zA-Z0-9]{3}",
@@ -116,21 +121,9 @@
             "required": true
             "required": true
         },
         },
         {
         {
-            "description": "Queue names",
-            "name": "HORNETQ_QUEUES",
-            "value": "",
-            "required": false
-        },
-        {
-            "description": "Topic names",
-            "name": "HORNETQ_TOPICS",
-            "value": "",
-            "required": false
-        },
-        {
             "description": "The name of the secret containing the keystore file",
             "description": "The name of the secret containing the keystore file",
             "name": "JGROUPS_ENCRYPT_SECRET",
             "name": "JGROUPS_ENCRYPT_SECRET",
-            "value": "eap-app-secret",
+            "value": "sso-app-secret",
             "required": false
             "required": false
         },
         },
         {
         {
@@ -140,15 +133,15 @@
             "required": false
             "required": false
         },
         },
         {
         {
-            "description": "The name associated with the server certificate",
+            "description": "The name associated with the server certificate (e.g. secret-key)",
             "name": "JGROUPS_ENCRYPT_NAME",
             "name": "JGROUPS_ENCRYPT_NAME",
-            "value": "secret-key",
+            "value": "",
             "required": false
             "required": false
         },
         },
         {
         {
-            "description": "The password for the keystore and certificate",
+            "description": "The password for the keystore and certificate (e.g. password)",
             "name": "JGROUPS_ENCRYPT_PASSWORD",
             "name": "JGROUPS_ENCRYPT_PASSWORD",
-            "value": "password",
+            "value": "",
             "required": false
             "required": false
         },
         },
         {
         {
@@ -163,6 +156,54 @@
             "name": "IMAGE_STREAM_NAMESPACE",
             "name": "IMAGE_STREAM_NAMESPACE",
             "value": "openshift",
             "value": "openshift",
             "required": true
             "required": true
+        },
+        {
+            "description": "SSO Server admin username",
+            "name": "SSO_ADMIN_USERNAME",
+            "value": "admin",
+            "required": false
+        },
+        {
+            "description": "SSO Server admin  password",
+            "name": "SSO_ADMIN_PASSWORD",
+            "value": "admin",
+            "required": false
+        },
+        {
+            "description": "Realm to be created in the SSO server (e.g. demo).",
+            "name": "SSO_REALM",
+            "value": "",
+            "required": false
+        },
+        {
+            "description": "The username used to access the SSO service.  This is used by clients to create the appliction client(s) within the specified SSO realm.",
+            "name": "SSO_SERVICE_USERNAME",
+            "value": "",
+            "required": false
+        },
+        {
+            "description": "The password for the SSO service user.",
+            "name": "SSO_SERVICE_PASSWORD",
+            "value": "",
+            "required": false
+        },
+        {
+            "description": "The name of the truststore file within the secret (e.g. truststore.jks)",
+            "name": "SSO_TRUSTSTORE",
+            "value": "",
+            "required": false
+        },
+        {
+            "description": "The password for the truststore and certificate (e.g. mykeystorepass)",
+            "name": "SSO_TRUSTSTORE_PASSWORD",
+            "value": "",
+            "required": false
+        },
+        {
+            "description": "The name of the secret containing the truststore file (e.g. truststore-secret). Used for volume secretName",
+            "name": "SSO_TRUSTSTORE_SECRET",
+            "value": "sso-app-secret",
+            "required": false
         }
         }
     ],
     ],
     "objects": [
     "objects": [
@@ -311,7 +352,7 @@
                              "from": {
                              "from": {
                                 "kind": "ImageStreamTag",
                                 "kind": "ImageStreamTag",
                                 "namespace": "${IMAGE_STREAM_NAMESPACE}",
                                 "namespace": "${IMAGE_STREAM_NAMESPACE}",
-                                "name": "redhat-sso70-openshift:1.3-TP" 
+                                "name": "redhat-sso70-openshift:1.3" 
                             }
                             }
                         }
                         }
                     },
                     },
@@ -333,8 +374,8 @@
                         }
                         }
                     },
                     },
                     "spec": {
                     "spec": {
-                        "serviceAccountName": "sso-service-account",
-                        "terminationGracePeriodSeconds": 60,
+                        "serviceAccountName": "${SERVICE_ACCOUNT_NAME}",
+                        "terminationGracePeriodSeconds": 75,
                         "containers": [
                         "containers": [
                             {
                             {
                                 "name": "${APPLICATION_NAME}",
                                 "name": "${APPLICATION_NAME}",
@@ -350,8 +391,24 @@
                                         "name": "eap-jgroups-keystore-volume",
                                         "name": "eap-jgroups-keystore-volume",
                                         "mountPath": "/etc/jgroups-encrypt-secret-volume",
                                         "mountPath": "/etc/jgroups-encrypt-secret-volume",
                                         "readOnly": true
                                         "readOnly": true
+                                    },
+                                    {
+                                        "name": "sso-truststore-volume",
+                                        "mountPath": "/etc/sso-secret-volume",
+                                        "readOnly": true
                                     }
                                     }
                                 ],
                                 ],
+                                "lifecycle": {
+                                    "preStop": {
+                                        "exec": {
+                                            "command": [
+                                                "/opt/eap/bin/jboss-cli.sh",
+                                                "-c",
+                                                ":shutdown(timeout=60)"
+                                            ]
+                                        }
+                                    }
+                                },
                                 "livenessProbe": {
                                 "livenessProbe": {
                                     "exec": {
                                     "exec": {
                                         "command": [
                                         "command": [
@@ -385,6 +442,11 @@
                                         "name": "https",
                                         "name": "https",
                                         "containerPort": 8443,
                                         "containerPort": 8443,
                                         "protocol": "TCP"
                                         "protocol": "TCP"
+                                    },
+                                    {
+                                        "name": "ping",
+                                        "containerPort": 8888,
+                                        "protocol": "TCP"
                                     }
                                     }
                                 ],
                                 ],
                                 "env": [
                                 "env": [
@@ -437,32 +499,24 @@
                                         }
                                         }
                                     },
                                     },
                                     {
                                     {
-                                        "name": "EAP_HTTPS_KEYSTORE_DIR",
+                                        "name": "HTTPS_KEYSTORE_DIR",
                                         "value": "/etc/eap-secret-volume"
                                         "value": "/etc/eap-secret-volume"
                                     },
                                     },
                                     {
                                     {
-                                        "name": "EAP_HTTPS_KEYSTORE",
+                                        "name": "HTTPS_KEYSTORE",
                                         "value": "${HTTPS_KEYSTORE}"
                                         "value": "${HTTPS_KEYSTORE}"
                                     },
                                     },
                                     {
                                     {
-                                        "name": "EAP_HTTPS_NAME",
-                                        "value": "${HTTPS_NAME}"
-                                    },
-                                    {
-                                        "name": "EAP_HTTPS_PASSWORD",
-                                        "value": "${HTTPS_PASSWORD}"
-                                    },
-                                    {
-                                        "name": "HORNETQ_CLUSTER_PASSWORD",
-                                        "value": "${HORNETQ_CLUSTER_PASSWORD}"
+                                        "name": "HTTPS_KEYSTORE_TYPE",
+                                        "value": "${HTTPS_KEYSTORE_TYPE}"
                                     },
                                     },
                                     {
                                     {
-                                        "name": "HORNETQ_QUEUES",
-                                        "value": "${HORNETQ_QUEUES}"
+                                        "name": "HTTPS_NAME",
+                                        "value": "${HTTPS_NAME}"
                                     },
                                     },
                                     {
                                     {
-                                        "name": "HORNETQ_TOPICS",
-                                        "value": "${HORNETQ_TOPICS}"
+                                        "name": "HTTPS_PASSWORD",
+                                        "value": "${HTTPS_PASSWORD}"
                                     },
                                     },
                                     {
                                     {
                                         "name": "JGROUPS_ENCRYPT_SECRET",
                                         "name": "JGROUPS_ENCRYPT_SECRET",
@@ -487,6 +541,38 @@
                                     {
                                     {
                                         "name": "JGROUPS_CLUSTER_PASSWORD",
                                         "name": "JGROUPS_CLUSTER_PASSWORD",
                                         "value": "${JGROUPS_CLUSTER_PASSWORD}"
                                         "value": "${JGROUPS_CLUSTER_PASSWORD}"
+                                    },
+                                    {
+                                        "name": "SSO_ADMIN_USERNAME",
+                                        "value": "${SSO_ADMIN_USERNAME}"
+                                    },
+                                    {
+                                        "name": "SSO_ADMIN_PASSWORD",
+                                        "value": "${SSO_ADMIN_PASSWORD}"
+                                    },
+                                    {
+                                        "name": "SSO_REALM",
+                                        "value": "${SSO_REALM}"
+                                    },
+                                    {
+                                        "name": "SSO_SERVICE_USERNAME",
+                                        "value": "${SSO_SERVICE_USERNAME}"
+                                    },
+                                    {
+                                        "name": "SSO_SERVICE_PASSWORD",
+                                        "value": "${SSO_SERVICE_PASSWORD}"
+                                    },
+                                    {
+                                        "name": "SSO_TRUSTSTORE",
+                                        "value": "${SSO_TRUSTSTORE}"
+                                    },
+                                    {
+                                        "name": "SSO_TRUSTSTORE_DIR",
+                                        "value": "/etc/sso-secret-volume"
+                                    },
+                                    {
+                                        "name": "SSO_TRUSTSTORE_PASSWORD",
+                                        "value": "${SSO_TRUSTSTORE_PASSWORD}"
                                     }
                                     }
                                 ]
                                 ]
                             }
                             }
@@ -503,6 +589,12 @@
                                 "secret": {
                                 "secret": {
                                     "secretName": "${JGROUPS_ENCRYPT_SECRET}"
                                     "secretName": "${JGROUPS_ENCRYPT_SECRET}"
                                 }
                                 }
+                            },
+                            {
+                                "name": "sso-truststore-volume",
+                                "secret": {
+                                    "secretName": "${SSO_TRUSTSTORE_SECRET}"
+                                }
                             }
                             }
                         ]
                         ]
                     }
                     }
@@ -586,6 +678,10 @@
                                         "value": "${POSTGRESQL_MAX_CONNECTIONS}"
                                         "value": "${POSTGRESQL_MAX_CONNECTIONS}"
                                     },
                                     },
                                     {
                                     {
+                                        "name": "POSTGRESQL_MAX_PREPARED_TRANSACTIONS",
+                                        "value": "${POSTGRESQL_MAX_CONNECTIONS}"
+                                    },
+                                    {
                                         "name": "POSTGRESQL_SHARED_BUFFERS",
                                         "name": "POSTGRESQL_SHARED_BUFFERS",
                                         "value": "${POSTGRESQL_SHARED_BUFFERS}"
                                         "value": "${POSTGRESQL_SHARED_BUFFERS}"
                                     }
                                     }

+ 29 - 6
roles/openshift_examples/files/examples/v1.3/xpaas-streams/jboss-image-streams.json

@@ -127,6 +127,19 @@
                             "sampleRef": "6.4.x",
                             "sampleRef": "6.4.x",
                             "version": "1.3"
                             "version": "1.3"
                         }
                         }
+                    },
+                    {
+                        "name": "1.4",
+                        "annotations": {
+                            "description": "JBoss EAP 6.4 S2I images.",
+                            "iconClass": "icon-jboss",
+                            "tags": "builder,eap,javaee,java,jboss,xpaas",
+                            "supports":"eap:6.4,javaee:6,java:8,xpaas:1.4",
+                            "sampleRepo": "https://github.com/jboss-developer/jboss-eap-quickstarts.git",
+                            "sampleContextDir": "kitchensink",
+                            "sampleRef": "6.4.x",
+                            "version": "1.4"
+                        }
                     }
                     }
                 ]
                 ]
             }
             }
@@ -152,6 +165,19 @@
                             "sampleRef": "7.0.0.GA",
                             "sampleRef": "7.0.0.GA",
                             "version": "1.3"
                             "version": "1.3"
                         }
                         }
+                    },
+                    {
+                        "name": "1.4",
+                        "annotations": {
+                            "description": "JBoss EAP 7.0 S2I images.",
+                            "iconClass": "icon-jboss",
+                            "tags": "builder,eap,javaee,java,jboss,xpaas",
+                            "supports":"eap:7.0,javaee:7,java:8,xpaas:1.4",
+                            "sampleRepo": "https://github.com/jboss-developer/jboss-eap-quickstarts.git",
+                            "sampleContextDir": "kitchensink",
+                            "sampleRef": "7.0.0.GA",
+                            "version": "1.4"
+                        }
                     }
                     }
                 ]
                 ]
             }
             }
@@ -255,19 +281,16 @@
                 }
                 }
             },
             },
             "spec": {
             "spec": {
+                "dockerImageRepository": "registry.access.redhat.com/redhat-sso-7/sso70-openshift",
                 "tags": [
                 "tags": [
                     {
                     {
-                        "name": "1.3-TP",
+                        "name": "1.3",
                         "annotations": {
                         "annotations": {
-                            "description": "Red Hat SSO 7.0 Tech Preview",
+                            "description": "Red Hat SSO 7.0",
                             "iconClass": "icon-jboss",
                             "iconClass": "icon-jboss",
                             "tags": "sso,keycloak,redhat",
                             "tags": "sso,keycloak,redhat",
                             "supports":"sso:7.0,xpaas:1.3",
                             "supports":"sso:7.0,xpaas:1.3",
                             "version": "1.3"
                             "version": "1.3"
-                        },
-                        "from": {
-                          "kind": "DockerImage",
-                          "name": "registry.access.redhat.com/redhat-sso-7-tech-preview/sso70-openshift:1.3"
                         }
                         }
                     }
                     }
                 ]
                 ]

+ 10 - 0
roles/openshift_examples/files/examples/v1.3/xpaas-templates/amq62-basic.json

@@ -40,6 +40,12 @@
             "required": false
             "required": false
         },
         },
         {
         {
+            "description": "List of packages that are allowed to be serialized for use in ObjectMessage, separated by commas. If your app doesn't use ObjectMessages, leave this blank. This is a security enforcement. For the rationale, see http://activemq.apache.org/objectmessage.html",
+            "name": "MQ_SERIALIZABLE_PACKAGES",
+            "value": "",
+            "required": false
+        },
+        {
             "description": "User name for standard broker user. It is required for connecting to the broker. If left empty, it will be generated.",
             "description": "User name for standard broker user. It is required for connecting to the broker. If left empty, it will be generated.",
             "name": "MQ_USERNAME",
             "name": "MQ_USERNAME",
             "from": "user[a-zA-Z0-9]{3}",
             "from": "user[a-zA-Z0-9]{3}",
@@ -281,6 +287,10 @@
                                         "value": "${MQ_TOPICS}"
                                         "value": "${MQ_TOPICS}"
                                     },
                                     },
                                     {
                                     {
+                                        "name": "MQ_SERIALIZABLE_PACKAGES",
+                                        "value": "${MQ_SERIALIZABLE_PACKAGES}"
+                                    },
+                                    {
                                         "name": "AMQ_MESH_DISCOVERY_TYPE",
                                         "name": "AMQ_MESH_DISCOVERY_TYPE",
                                         "value": "${AMQ_MESH_DISCOVERY_TYPE}"
                                         "value": "${AMQ_MESH_DISCOVERY_TYPE}"
                                     },
                                     },

+ 10 - 0
roles/openshift_examples/files/examples/v1.3/xpaas-templates/amq62-persistent-ssl.json

@@ -46,6 +46,12 @@
             "required": false
             "required": false
         },
         },
         {
         {
+            "description": "List of packages that are allowed to be serialized for use in ObjectMessage, separated by commas. If your app doesn't use ObjectMessages, leave this blank. This is a security enforcement. For the rationale, see http://activemq.apache.org/objectmessage.html",
+            "name": "MQ_SERIALIZABLE_PACKAGES",
+            "value": "",
+            "required": false
+        },
+        {
             "description": "Size of persistent storage for database volume.",
             "description": "Size of persistent storage for database volume.",
             "name": "VOLUME_CAPACITY",
             "name": "VOLUME_CAPACITY",
             "value": "512Mi",
             "value": "512Mi",
@@ -451,6 +457,10 @@
                                         "value": "${MQ_TOPICS}"
                                         "value": "${MQ_TOPICS}"
                                     },
                                     },
                                     {
                                     {
+                                        "name": "MQ_SERIALIZABLE_PACKAGES",
+                                        "value": "${MQ_SERIALIZABLE_PACKAGES}"
+                                    },
+                                    {
                                         "name": "AMQ_SPLIT",
                                         "name": "AMQ_SPLIT",
                                         "value": "${AMQ_SPLIT}"
                                         "value": "${AMQ_SPLIT}"
                                     },
                                     },

+ 10 - 0
roles/openshift_examples/files/examples/v1.3/xpaas-templates/amq62-persistent.json

@@ -46,6 +46,12 @@
             "required": false
             "required": false
         },
         },
         {
         {
+            "description": "List of packages that are allowed to be serialized for use in ObjectMessage, separated by commas. If your app doesn't use ObjectMessages, leave this blank. This is a security enforcement. For the rationale, see http://activemq.apache.org/objectmessage.html",
+            "name": "MQ_SERIALIZABLE_PACKAGES",
+            "value": "",
+            "required": false
+        },
+        {
             "description": "Size of persistent storage for database volume.",
             "description": "Size of persistent storage for database volume.",
             "name": "VOLUME_CAPACITY",
             "name": "VOLUME_CAPACITY",
             "value": "512Mi",
             "value": "512Mi",
@@ -299,6 +305,10 @@
                                         "value": "${MQ_TOPICS}"
                                         "value": "${MQ_TOPICS}"
                                     },
                                     },
                                     {
                                     {
+                                        "name": "MQ_SERIALIZABLE_PACKAGES",
+                                        "value": "${MQ_SERIALIZABLE_PACKAGES}"
+                                    },
+                                    {
                                         "name": "AMQ_SPLIT",
                                         "name": "AMQ_SPLIT",
                                         "value": "${AMQ_SPLIT}"
                                         "value": "${AMQ_SPLIT}"
                                     },
                                     },

+ 10 - 0
roles/openshift_examples/files/examples/v1.3/xpaas-templates/amq62-ssl.json

@@ -40,6 +40,12 @@
             "required": false
             "required": false
         },
         },
         {
         {
+            "description": "List of packages that are allowed to be serialized for use in ObjectMessage, separated by commas. If your app doesn't use ObjectMessages, leave this blank. This is a security enforcement. For the rationale, see http://activemq.apache.org/objectmessage.html",
+            "name": "MQ_SERIALIZABLE_PACKAGES",
+            "value": "",
+            "required": false
+        },
+        {
             "description": "User name for standard broker user. It is required for connecting to the broker. If left empty, it will be generated.",
             "description": "User name for standard broker user. It is required for connecting to the broker. If left empty, it will be generated.",
             "name": "MQ_USERNAME",
             "name": "MQ_USERNAME",
             "from": "user[a-zA-Z0-9]{3}",
             "from": "user[a-zA-Z0-9]{3}",
@@ -435,6 +441,10 @@
                                         "value": "${MQ_TOPICS}"
                                         "value": "${MQ_TOPICS}"
                                     },
                                     },
                                     {
                                     {
+                                        "name": "MQ_SERIALIZABLE_PACKAGES",
+                                        "value": "${MQ_SERIALIZABLE_PACKAGES}"
+                                    },
+                                    {
                                         "name": "AMQ_MESH_DISCOVERY_TYPE",
                                         "name": "AMQ_MESH_DISCOVERY_TYPE",
                                         "value": "${AMQ_MESH_DISCOVERY_TYPE}"
                                         "value": "${AMQ_MESH_DISCOVERY_TYPE}"
                                     },
                                     },

+ 6 - 2
roles/openshift_examples/files/examples/v1.3/xpaas-templates/datagrid65-postgresql-persistent.json

@@ -6,13 +6,13 @@
             "iconClass": "icon-jboss",
             "iconClass": "icon-jboss",
             "description": "Application template for JDG 6.5 and PostgreSQL applications with persistent storage.",
             "description": "Application template for JDG 6.5 and PostgreSQL applications with persistent storage.",
             "tags": "datagrid,jboss,xpaas",
             "tags": "datagrid,jboss,xpaas",
-            "version": "1.2.0"
+            "version": "1.3.2"
         },
         },
         "name": "datagrid65-postgresql-persistent"
         "name": "datagrid65-postgresql-persistent"
     },
     },
     "labels": {
     "labels": {
         "template": "datagrid65-postgresql-persistent",
         "template": "datagrid65-postgresql-persistent",
-        "xpaas": "1.2.0"
+        "xpaas": "1.3.2"
     },
     },
     "parameters": [
     "parameters": [
         {
         {
@@ -710,6 +710,10 @@
                                         "value": "${POSTGRESQL_MAX_CONNECTIONS}"
                                         "value": "${POSTGRESQL_MAX_CONNECTIONS}"
                                     },
                                     },
                                     {
                                     {
+                                        "name": "POSTGRESQL_MAX_PREPARED_TRANSACTIONS",
+                                        "value": "${POSTGRESQL_MAX_CONNECTIONS}"
+                                    },
+                                    {
                                         "name": "POSTGRESQL_SHARED_BUFFERS",
                                         "name": "POSTGRESQL_SHARED_BUFFERS",
                                         "value": "${POSTGRESQL_SHARED_BUFFERS}"
                                         "value": "${POSTGRESQL_SHARED_BUFFERS}"
                                     }
                                     }

+ 6 - 2
roles/openshift_examples/files/examples/v1.3/xpaas-templates/datagrid65-postgresql.json

@@ -6,13 +6,13 @@
             "iconClass": "icon-jboss",
             "iconClass": "icon-jboss",
             "description": "Application template for JDG 6.5 and PostgreSQL applications built using.",
             "description": "Application template for JDG 6.5 and PostgreSQL applications built using.",
             "tags": "datagrid,jboss,xpaas",
             "tags": "datagrid,jboss,xpaas",
-            "version": "1.2.0"
+            "version": "1.3.2"
         },
         },
         "name": "datagrid65-postgresql"
         "name": "datagrid65-postgresql"
     },
     },
     "labels": {
     "labels": {
         "template": "datagrid65-postgresql",
         "template": "datagrid65-postgresql",
-        "xpaas": "1.2.0"
+        "xpaas": "1.3.2"
     },
     },
     "parameters": [
     "parameters": [
         {
         {
@@ -698,6 +698,10 @@
                                         "value": "${POSTGRESQL_MAX_CONNECTIONS}"
                                         "value": "${POSTGRESQL_MAX_CONNECTIONS}"
                                     },
                                     },
                                     {
                                     {
+                                        "name": "POSTGRESQL_MAX_PREPARED_TRANSACTIONS",
+                                        "value": "${POSTGRESQL_MAX_CONNECTIONS}"
+                                    },
+                                    {
                                         "name": "POSTGRESQL_SHARED_BUFFERS",
                                         "name": "POSTGRESQL_SHARED_BUFFERS",
                                         "value": "${POSTGRESQL_SHARED_BUFFERS}"
                                         "value": "${POSTGRESQL_SHARED_BUFFERS}"
                                     }
                                     }

+ 2 - 2
roles/openshift_examples/files/examples/v1.3/xpaas-templates/decisionserver62-amq-s2i.json

@@ -391,8 +391,8 @@
                                 "${APPLICATION_NAME}"
                                 "${APPLICATION_NAME}"
                             ],
                             ],
                             "from": {
                             "from": {
-                                "kind": "ImageStream",
-                                "name": "${APPLICATION_NAME}"
+                                "kind": "ImageStreamTag",
+                                "name": "${APPLICATION_NAME}:latest"
                             }
                             }
                         }
                         }
                     },
                     },

+ 2 - 2
roles/openshift_examples/files/examples/v1.3/xpaas-templates/decisionserver62-basic-s2i.json

@@ -245,8 +245,8 @@
                                 "${APPLICATION_NAME}"
                                 "${APPLICATION_NAME}"
                             ],
                             ],
                             "from": {
                             "from": {
-                                "kind": "ImageStream",
-                                "name": "${APPLICATION_NAME}"
+                                "kind": "ImageStreamTag",
+                                "name": "${APPLICATION_NAME}:latest"
                             }
                             }
                         }
                         }
                     },
                     },

+ 2 - 2
roles/openshift_examples/files/examples/v1.3/xpaas-templates/decisionserver62-https-s2i.json

@@ -334,8 +334,8 @@
                                 "${APPLICATION_NAME}"
                                 "${APPLICATION_NAME}"
                             ],
                             ],
                             "from": {
                             "from": {
-                                "kind": "ImageStream",
-                                "name": "${APPLICATION_NAME}"
+                                "kind": "ImageStreamTag",
+                                "name": "${APPLICATION_NAME}:latest"
                             }
                             }
                         }
                         }
                     },
                     },

+ 54 - 24
roles/openshift_examples/files/examples/v1.3/xpaas-templates/eap64-amq-persistent-s2i.json

@@ -6,13 +6,13 @@
             "description": "Application template for EAP 6 A-MQ applications with persistent storage built using S2I.",
             "description": "Application template for EAP 6 A-MQ applications with persistent storage built using S2I.",
             "iconClass": "icon-jboss",
             "iconClass": "icon-jboss",
             "tags": "eap,amq,javaee,java,messaging,jboss,xpaas",
             "tags": "eap,amq,javaee,java,messaging,jboss,xpaas",
-            "version": "1.3.1"
+            "version": "1.3.2"
         },
         },
         "name": "eap64-amq-persistent-s2i"
         "name": "eap64-amq-persistent-s2i"
     },
     },
     "labels": {
     "labels": {
         "template": "eap64-amq-persistent-s2i",
         "template": "eap64-amq-persistent-s2i",
-        "xpaas": "1.3.1"
+        "xpaas": "1.3.2"
     },
     },
     "parameters": [
     "parameters": [
         {
         {
@@ -88,6 +88,18 @@
             "required": false
             "required": false
         },
         },
         {
         {
+            "description": "List of packages that are allowed to be serialized for use in ObjectMessage, separated by commas. If your app doesn't use ObjectMessages, leave this blank. This is a security enforcement. For the rationale, see http://activemq.apache.org/objectmessage.html",
+            "name": "MQ_SERIALIZABLE_PACKAGES",
+            "value": "",
+            "required": false
+        },
+        {
+            "description": "The name of the service account to use for the deployment.  The service account should be configured to allow useage of the secret(s) specified by HTTPS_SECRET and JGROUPS_ENCRYPT_SECRET.",
+            "name": "SERVICE_ACCOUNT_NAME",
+            "value": "eap-service-account",
+            "required": true
+        },
+        {
             "description": "The name of the secret containing the keystore file",
             "description": "The name of the secret containing the keystore file",
             "name": "HTTPS_SECRET",
             "name": "HTTPS_SECRET",
             "value": "eap-app-secret",
             "value": "eap-app-secret",
@@ -100,6 +112,12 @@
             "required": false
             "required": false
         },
         },
         {
         {
+            "description": "The type of the keystore file (JKS or JCEKS)",
+            "name": "HTTPS_KEYSTORE_TYPE",
+            "value": "",
+            "required": false
+        },
+        {
             "description": "The name associated with the server certificate",
             "description": "The name associated with the server certificate",
             "name": "HTTPS_NAME",
             "name": "HTTPS_NAME",
             "value": "",
             "value": "",
@@ -126,18 +144,16 @@
             "required": false
             "required": false
         },
         },
         {
         {
-            "description": "User name for broker admin. If left empty, it will be generated.",
-            "name": "AMQ_ADMIN_USERNAME",
-            "from": "user[a-zA-Z0-9]{3}",
-            "generate": "expression",
-            "required": true
+            "description": "The discovery agent type to use for discovering mesh endpoints.  'dns' will use OpenShift's DNS service to resolve endpoints.  'kube' will use Kubernetes REST API to resolve service endpoints.  If using 'kube' the service account for the pod must have the 'view' role, which can be added via 'oc policy add-role-to-user view system:serviceaccount:<namespace>:default' where <namespace> is the project namespace.",
+            "name": "AMQ_MESH_DISCOVERY_TYPE",
+            "value": "kube",
+            "required": false
         },
         },
         {
         {
-            "description": "Password for broker admin. If left empty, it will be generated.",
-            "name": "AMQ_ADMIN_PASSWORD",
-            "from": "[a-zA-Z0-9]{8}",
-            "generate": "expression",
-            "required": true
+            "description": "The A-MQ storage usage limit",
+            "name": "AMQ_STORAGE_USAGE_LIMIT",
+            "value": "100 gb",
+            "required": false
         },
         },
         {
         {
             "description": "GitHub trigger secret",
             "description": "GitHub trigger secret",
@@ -189,6 +205,12 @@
             "from": "[a-zA-Z0-9]{8}",
             "from": "[a-zA-Z0-9]{8}",
             "generate": "expression",
             "generate": "expression",
             "required": true
             "required": true
+        },
+        {
+            "description": "Controls whether exploded deployment content should be automatically deployed",
+            "name": "AUTO_DEPLOY_EXPLODED",
+            "value": "false",
+            "required": false
         }
         }
     ],
     ],
     "objects": [
     "objects": [
@@ -342,7 +364,7 @@
                         "from": {
                         "from": {
                             "kind": "ImageStreamTag",
                             "kind": "ImageStreamTag",
                             "namespace": "${IMAGE_STREAM_NAMESPACE}",
                             "namespace": "${IMAGE_STREAM_NAMESPACE}",
-                            "name": "jboss-eap64-openshift:1.2"
+                            "name": "jboss-eap64-openshift:1.4"
                         }
                         }
                     }
                     }
                 },
                 },
@@ -397,8 +419,8 @@
                                 "${APPLICATION_NAME}"
                                 "${APPLICATION_NAME}"
                             ],
                             ],
                             "from": {
                             "from": {
-                                "kind": "ImageStream",
-                                "name": "${APPLICATION_NAME}"
+                                "kind": "ImageStreamTag",
+                                "name": "${APPLICATION_NAME}:latest"
                             }
                             }
                         }
                         }
                     },
                     },
@@ -419,7 +441,7 @@
                         }
                         }
                     },
                     },
                     "spec": {
                     "spec": {
-                        "serviceAccountName": "eap-service-account",
+                        "serviceAccountName": "${SERVICE_ACCOUNT_NAME}",
                         "terminationGracePeriodSeconds": 60,
                         "terminationGracePeriodSeconds": 60,
                         "containers": [
                         "containers": [
                             {
                             {
@@ -508,6 +530,10 @@
                                         "value": "${MQ_TOPICS}"
                                         "value": "${MQ_TOPICS}"
                                     },
                                     },
                                     {
                                     {
+                                        "name": "MQ_SERIALIZABLE_PACKAGES",
+                                        "value": "${MQ_SERIALIZABLE_PACKAGES}"
+                                    },
+                                    {
                                         "name": "OPENSHIFT_KUBE_PING_LABELS",
                                         "name": "OPENSHIFT_KUBE_PING_LABELS",
                                         "value": "application=${APPLICATION_NAME}"
                                         "value": "application=${APPLICATION_NAME}"
                                     },
                                     },
@@ -528,6 +554,10 @@
                                         "value": "${HTTPS_KEYSTORE}"
                                         "value": "${HTTPS_KEYSTORE}"
                                     },
                                     },
                                     {
                                     {
+                                        "name": "HTTPS_KEYSTORE_TYPE",
+                                        "value": "${HTTPS_KEYSTORE_TYPE}"
+                                    },
+                                    {
                                         "name": "HTTPS_NAME",
                                         "name": "HTTPS_NAME",
                                         "value": "${HTTPS_NAME}"
                                         "value": "${HTTPS_NAME}"
                                     },
                                     },
@@ -558,6 +588,10 @@
                                     {
                                     {
                                         "name": "JGROUPS_CLUSTER_PASSWORD",
                                         "name": "JGROUPS_CLUSTER_PASSWORD",
                                         "value": "${JGROUPS_CLUSTER_PASSWORD}"
                                         "value": "${JGROUPS_CLUSTER_PASSWORD}"
+                                    },
+                                    {
+                                        "name": "AUTO_DEPLOY_EXPLODED",
+                                        "value": "${AUTO_DEPLOY_EXPLODED}"
                                     }
                                     }
                                 ]
                                 ]
                             }
                             }
@@ -713,6 +747,10 @@
                                         "value": "${MQ_TOPICS}"
                                         "value": "${MQ_TOPICS}"
                                     },
                                     },
                                     {
                                     {
+                                        "name": "MQ_SERIALIZABLE_PACKAGES",
+                                        "value": "${MQ_SERIALIZABLE_PACKAGES}"
+                                    },
+                                    {
                                         "name": "AMQ_SPLIT",
                                         "name": "AMQ_SPLIT",
                                         "value": "${AMQ_SPLIT}"
                                         "value": "${AMQ_SPLIT}"
                                     },
                                     },
@@ -735,14 +773,6 @@
                                     {
                                     {
                                         "name": "AMQ_STORAGE_USAGE_LIMIT",
                                         "name": "AMQ_STORAGE_USAGE_LIMIT",
                                         "value": "${AMQ_STORAGE_USAGE_LIMIT}"
                                         "value": "${AMQ_STORAGE_USAGE_LIMIT}"
-                                    },
-                                    {
-                                        "name": "AMQ_ADMIN_USERNAME",
-                                        "value": "${AMQ_ADMIN_USERNAME}"
-                                    },
-                                    {
-                                        "name": "AMQ_ADMIN_PASSWORD",
-                                        "value": "${AMQ_ADMIN_PASSWORD}"
                                     }
                                     }
                                 ]
                                 ]
                             }
                             }

+ 70 - 20
roles/openshift_examples/files/examples/v1.3/xpaas-templates/eap64-amq-s2i.json

@@ -6,13 +6,13 @@
             "description": "Application template for EAP 6 A-MQ applications built using S2I.",
             "description": "Application template for EAP 6 A-MQ applications built using S2I.",
             "iconClass": "icon-jboss",
             "iconClass": "icon-jboss",
             "tags": "eap,amq,javaee,java,messaging,jboss,xpaas",
             "tags": "eap,amq,javaee,java,messaging,jboss,xpaas",
-            "version": "1.3.1"
+            "version": "1.3.2"
         },
         },
         "name": "eap64-amq-s2i"
         "name": "eap64-amq-s2i"
     },
     },
     "labels": {
     "labels": {
         "template": "eap64-amq-s2i",
         "template": "eap64-amq-s2i",
-        "xpaas": "1.3.1"
+        "xpaas": "1.3.2"
     },
     },
     "parameters": [
     "parameters": [
         {
         {
@@ -76,6 +76,18 @@
             "required": false
             "required": false
         },
         },
         {
         {
+            "description": "List of packages that are allowed to be serialized for use in ObjectMessage, separated by commas. If your app doesn't use ObjectMessages, leave this blank. This is a security enforcement. For the rationale, see http://activemq.apache.org/objectmessage.html",
+            "name": "MQ_SERIALIZABLE_PACKAGES",
+            "value": "",
+            "required": false
+        },
+        {
+            "description": "The name of the service account to use for the deployment.  The service account should be configured to allow useage of the secret(s) specified by HTTPS_SECRET and JGROUPS_ENCRYPT_SECRET.",
+            "name": "SERVICE_ACCOUNT_NAME",
+            "value": "eap-service-account",
+            "required": true
+        },
+        {
             "description": "The name of the secret containing the keystore file",
             "description": "The name of the secret containing the keystore file",
             "name": "HTTPS_SECRET",
             "name": "HTTPS_SECRET",
             "value": "eap-app-secret",
             "value": "eap-app-secret",
@@ -88,6 +100,12 @@
             "required": false
             "required": false
         },
         },
         {
         {
+            "description": "The type of the keystore file (JKS or JCEKS)",
+            "name": "HTTPS_KEYSTORE_TYPE",
+            "value": "",
+            "required": false
+        },
+        {
             "description": "The name associated with the server certificate",
             "description": "The name associated with the server certificate",
             "name": "HTTPS_NAME",
             "name": "HTTPS_NAME",
             "value": "",
             "value": "",
@@ -114,18 +132,16 @@
             "required": false
             "required": false
         },
         },
         {
         {
-            "description": "User name for broker admin. If left empty, it will be generated.",
-            "name": "AMQ_ADMIN_USERNAME",
-            "from": "user[a-zA-Z0-9]{3}",
-            "generate": "expression",
-            "required": true
+            "description": "The discovery agent type to use for discovering mesh endpoints.  'dns' will use OpenShift's DNS service to resolve endpoints.  'kube' will use Kubernetes REST API to resolve service endpoints.  If using 'kube' the service account for the pod must have the 'view' role, which can be added via 'oc policy add-role-to-user view system:serviceaccount:<namespace>:default' where <namespace> is the project namespace.",
+            "name": "AMQ_MESH_DISCOVERY_TYPE",
+            "value": "kube",
+            "required": false
         },
         },
         {
         {
-            "description": "Password for broker admin. If left empty, it will be generated.",
-            "name": "AMQ_ADMIN_PASSWORD",
-            "from": "[a-zA-Z0-9]{8}",
-            "generate": "expression",
-            "required": true
+            "description": "The A-MQ storage usage limit",
+            "name": "AMQ_STORAGE_USAGE_LIMIT",
+            "value": "100 gb",
+            "required": false
         },
         },
         {
         {
             "description": "GitHub trigger secret",
             "description": "GitHub trigger secret",
@@ -177,6 +193,12 @@
             "from": "[a-zA-Z0-9]{8}",
             "from": "[a-zA-Z0-9]{8}",
             "generate": "expression",
             "generate": "expression",
             "required": true
             "required": true
+        },
+        {
+            "description": "Controls whether exploded deployment content should be automatically deployed",
+            "name": "AUTO_DEPLOY_EXPLODED",
+            "value": "false",
+            "required": false
         }
         }
     ],
     ],
     "objects": [
     "objects": [
@@ -330,7 +352,7 @@
                         "from": {
                         "from": {
                             "kind": "ImageStreamTag",
                             "kind": "ImageStreamTag",
                             "namespace": "${IMAGE_STREAM_NAMESPACE}",
                             "namespace": "${IMAGE_STREAM_NAMESPACE}",
-                            "name": "jboss-eap64-openshift:1.2"
+                            "name": "jboss-eap64-openshift:1.4"
                         }
                         }
                     }
                     }
                 },
                 },
@@ -385,8 +407,8 @@
                                 "${APPLICATION_NAME}"
                                 "${APPLICATION_NAME}"
                             ],
                             ],
                             "from": {
                             "from": {
-                                "kind": "ImageStream",
-                                "name": "${APPLICATION_NAME}"
+                                "kind": "ImageStreamTag",
+                                "name": "${APPLICATION_NAME}:latest"
                             }
                             }
                         }
                         }
                     },
                     },
@@ -407,7 +429,7 @@
                         }
                         }
                     },
                     },
                     "spec": {
                     "spec": {
-                        "serviceAccountName": "eap-service-account",
+                        "serviceAccountName": "${SERVICE_ACCOUNT_NAME}",
                         "terminationGracePeriodSeconds": 60,
                         "terminationGracePeriodSeconds": 60,
                         "containers": [
                         "containers": [
                             {
                             {
@@ -496,6 +518,10 @@
                                         "value": "${MQ_TOPICS}"
                                         "value": "${MQ_TOPICS}"
                                     },
                                     },
                                     {
                                     {
+                                        "name": "MQ_SERIALIZABLE_PACKAGES",
+                                        "value": "${MQ_SERIALIZABLE_PACKAGES}"
+                                    },
+                                    {
                                         "name": "OPENSHIFT_KUBE_PING_LABELS",
                                         "name": "OPENSHIFT_KUBE_PING_LABELS",
                                         "value": "application=${APPLICATION_NAME}"
                                         "value": "application=${APPLICATION_NAME}"
                                     },
                                     },
@@ -516,6 +542,10 @@
                                         "value": "${HTTPS_KEYSTORE}"
                                         "value": "${HTTPS_KEYSTORE}"
                                     },
                                     },
                                     {
                                     {
+                                        "name": "HTTPS_KEYSTORE_TYPE",
+                                        "value": "${HTTPS_KEYSTORE_TYPE}"
+                                    },
+                                    {
                                         "name": "HTTPS_NAME",
                                         "name": "HTTPS_NAME",
                                         "value": "${HTTPS_NAME}"
                                         "value": "${HTTPS_NAME}"
                                     },
                                     },
@@ -546,6 +576,10 @@
                                     {
                                     {
                                         "name": "JGROUPS_CLUSTER_PASSWORD",
                                         "name": "JGROUPS_CLUSTER_PASSWORD",
                                         "value": "${JGROUPS_CLUSTER_PASSWORD}"
                                         "value": "${JGROUPS_CLUSTER_PASSWORD}"
+                                    },
+                                    {
+                                        "name": "AUTO_DEPLOY_EXPLODED",
+                                        "value": "${AUTO_DEPLOY_EXPLODED}"
                                     }
                                     }
                                 ]
                                 ]
                             }
                             }
@@ -692,12 +726,28 @@
                                         "value": "${MQ_TOPICS}"
                                         "value": "${MQ_TOPICS}"
                                     },
                                     },
                                     {
                                     {
-                                        "name": "AMQ_ADMIN_USERNAME",
-                                        "value": "${AMQ_ADMIN_USERNAME}"
+                                        "name": "MQ_SERIALIZABLE_PACKAGES",
+                                        "value": "${MQ_SERIALIZABLE_PACKAGES}"
+                                    },
+                                    {
+                                        "name": "AMQ_MESH_DISCOVERY_TYPE",
+                                        "value": "${AMQ_MESH_DISCOVERY_TYPE}"
+                                    },
+                                    {
+                                        "name": "AMQ_MESH_SERVICE_NAME",
+                                        "value": "${APPLICATION_NAME}-amq-tcp"
+                                    },
+                                    {
+                                        "name": "AMQ_MESH_SERVICE_NAMESPACE",
+                                        "valueFrom": {
+                                            "fieldRef": {
+                                                "fieldPath": "metadata.namespace"
+                                            }
+                                        }
                                     },
                                     },
                                     {
                                     {
-                                        "name": "AMQ_ADMIN_PASSWORD",
-                                        "value": "${AMQ_ADMIN_PASSWORD}"
+                                        "name": "AMQ_STORAGE_USAGE_LIMIT",
+                                        "value": "${AMQ_STORAGE_USAGE_LIMIT}"
                                     }
                                     }
                                 ]
                                 ]
                             }
                             }

+ 15 - 5
roles/openshift_examples/files/examples/v1.3/xpaas-templates/eap64-basic-s2i.json

@@ -6,13 +6,13 @@
             "iconClass": "icon-jboss",
             "iconClass": "icon-jboss",
             "description": "Application template for EAP 6 applications built using S2I.",
             "description": "Application template for EAP 6 applications built using S2I.",
             "tags": "eap,javaee,java,jboss,xpaas",
             "tags": "eap,javaee,java,jboss,xpaas",
-            "version": "1.2.0"
+            "version": "1.3.2"
         },
         },
         "name": "eap64-basic-s2i"
         "name": "eap64-basic-s2i"
     },
     },
     "labels": {
     "labels": {
         "template": "eap64-basic-s2i",
         "template": "eap64-basic-s2i",
-        "xpaas": "1.2.0"
+        "xpaas": "1.3.2"
     },
     },
     "parameters": [
     "parameters": [
         {
         {
@@ -90,6 +90,12 @@
             "from": "[a-zA-Z0-9]{8}",
             "from": "[a-zA-Z0-9]{8}",
             "generate": "expression",
             "generate": "expression",
             "required": true
             "required": true
+        },
+        {
+            "description": "Controls whether exploded deployment content should be automatically deployed",
+            "name": "AUTO_DEPLOY_EXPLODED",
+            "value": "false",
+            "required": false
         }
         }
     ],
     ],
     "objects": [
     "objects": [
@@ -172,7 +178,7 @@
                         "from": {
                         "from": {
                             "kind": "ImageStreamTag",
                             "kind": "ImageStreamTag",
                             "namespace": "${IMAGE_STREAM_NAMESPACE}",
                             "namespace": "${IMAGE_STREAM_NAMESPACE}",
-                            "name": "jboss-eap64-openshift:1.2"
+                            "name": "jboss-eap64-openshift:1.4"
                         }
                         }
                     }
                     }
                 },
                 },
@@ -227,8 +233,8 @@
                                 "${APPLICATION_NAME}"
                                 "${APPLICATION_NAME}"
                             ],
                             ],
                             "from": {
                             "from": {
-                                "kind": "ImageStream",
-                                "name": "${APPLICATION_NAME}"
+                                "kind": "ImageStreamTag",
+                                "name": "${APPLICATION_NAME}:latest"
                             }
                             }
                         }
                         }
                     },
                     },
@@ -318,6 +324,10 @@
                                     {
                                     {
                                         "name": "JGROUPS_CLUSTER_PASSWORD",
                                         "name": "JGROUPS_CLUSTER_PASSWORD",
                                         "value": "${JGROUPS_CLUSTER_PASSWORD}"
                                         "value": "${JGROUPS_CLUSTER_PASSWORD}"
+                                    },
+                                    {
+                                        "name": "AUTO_DEPLOY_EXPLODED",
+                                        "value": "${AUTO_DEPLOY_EXPLODED}"
                                     }
                                     }
                                 ]
                                 ]
                             }
                             }

+ 32 - 6
roles/openshift_examples/files/examples/v1.3/xpaas-templates/eap64-https-s2i.json

@@ -6,13 +6,13 @@
             "iconClass": "icon-jboss",
             "iconClass": "icon-jboss",
             "description": "Application template for EAP 6 applications built using S2I.",
             "description": "Application template for EAP 6 applications built using S2I.",
             "tags": "eap,javaee,java,jboss,xpaas",
             "tags": "eap,javaee,java,jboss,xpaas",
-            "version": "1.2.0"
+            "version": "1.3.2"
         },
         },
         "name": "eap64-https-s2i"
         "name": "eap64-https-s2i"
     },
     },
     "labels": {
     "labels": {
         "template": "eap64-https-s2i",
         "template": "eap64-https-s2i",
-        "xpaas": "1.2.0"
+        "xpaas": "1.3.2"
     },
     },
     "parameters": [
     "parameters": [
         {
         {
@@ -64,6 +64,12 @@
             "required": false
             "required": false
         },
         },
         {
         {
+            "description": "The name of the service account to use for the deployment.  The service account should be configured to allow useage of the secret(s) specified by HTTPS_SECRET and JGROUPS_ENCRYPT_SECRET.",
+            "name": "SERVICE_ACCOUNT_NAME",
+            "value": "eap-service-account",
+            "required": true
+        },
+        {
             "description": "The name of the secret containing the keystore file",
             "description": "The name of the secret containing the keystore file",
             "name": "HTTPS_SECRET",
             "name": "HTTPS_SECRET",
             "value": "eap-app-secret",
             "value": "eap-app-secret",
@@ -76,6 +82,12 @@
             "required": false
             "required": false
         },
         },
         {
         {
+            "description": "The type of the keystore file (JKS or JCEKS)",
+            "name": "HTTPS_KEYSTORE_TYPE",
+            "value": "",
+            "required": false
+        },
+        {
             "description": "The name associated with the server certificate",
             "description": "The name associated with the server certificate",
             "name": "HTTPS_NAME",
             "name": "HTTPS_NAME",
             "value": "",
             "value": "",
@@ -144,6 +156,12 @@
             "from": "[a-zA-Z0-9]{8}",
             "from": "[a-zA-Z0-9]{8}",
             "generate": "expression",
             "generate": "expression",
             "required": true
             "required": true
+        },
+        {
+            "description": "Controls whether exploded deployment content should be automatically deployed",
+            "name": "AUTO_DEPLOY_EXPLODED",
+            "value": "false",
+            "required": false
         }
         }
     ],
     ],
     "objects": [
     "objects": [
@@ -273,7 +291,7 @@
                         "from": {
                         "from": {
                             "kind": "ImageStreamTag",
                             "kind": "ImageStreamTag",
                             "namespace": "${IMAGE_STREAM_NAMESPACE}",
                             "namespace": "${IMAGE_STREAM_NAMESPACE}",
-                            "name": "jboss-eap64-openshift:1.2"
+                            "name": "jboss-eap64-openshift:1.4"
                         }
                         }
                     }
                     }
                 },
                 },
@@ -328,8 +346,8 @@
                                 "${APPLICATION_NAME}"
                                 "${APPLICATION_NAME}"
                             ],
                             ],
                             "from": {
                             "from": {
-                                "kind": "ImageStream",
-                                "name": "${APPLICATION_NAME}"
+                                "kind": "ImageStreamTag",
+                                "name": "${APPLICATION_NAME}:latest"
                             }
                             }
                         }
                         }
                     },
                     },
@@ -350,7 +368,7 @@
                         }
                         }
                     },
                     },
                     "spec": {
                     "spec": {
-                        "serviceAccountName": "eap-service-account",
+                        "serviceAccountName": "${SERVICE_ACCOUNT_NAME}",
                         "terminationGracePeriodSeconds": 60,
                         "terminationGracePeriodSeconds": 60,
                         "containers": [
                         "containers": [
                             {
                             {
@@ -431,6 +449,10 @@
                                         "value": "${HTTPS_KEYSTORE}"
                                         "value": "${HTTPS_KEYSTORE}"
                                     },
                                     },
                                     {
                                     {
+                                        "name": "HTTPS_KEYSTORE_TYPE",
+                                        "value": "${HTTPS_KEYSTORE_TYPE}"
+                                    },
+                                    {
                                         "name": "HTTPS_NAME",
                                         "name": "HTTPS_NAME",
                                         "value": "${HTTPS_NAME}"
                                         "value": "${HTTPS_NAME}"
                                     },
                                     },
@@ -473,6 +495,10 @@
                                     {
                                     {
                                         "name": "JGROUPS_CLUSTER_PASSWORD",
                                         "name": "JGROUPS_CLUSTER_PASSWORD",
                                         "value": "${JGROUPS_CLUSTER_PASSWORD}"
                                         "value": "${JGROUPS_CLUSTER_PASSWORD}"
+                                    },
+                                    {
+                                        "name": "AUTO_DEPLOY_EXPLODED",
+                                        "value": "${AUTO_DEPLOY_EXPLODED}"
                                     }
                                     }
                                 ]
                                 ]
                             }
                             }

+ 32 - 6
roles/openshift_examples/files/examples/v1.3/xpaas-templates/eap64-mongodb-persistent-s2i.json

@@ -6,13 +6,13 @@
             "description": "Application template for EAP 6 MongoDB applications with persistent storage built using S2I.",
             "description": "Application template for EAP 6 MongoDB applications with persistent storage built using S2I.",
             "iconClass": "icon-jboss",
             "iconClass": "icon-jboss",
             "tags": "eap,mongodb,javaee,java,database,jboss,xpaas",
             "tags": "eap,mongodb,javaee,java,database,jboss,xpaas",
-            "version": "1.2.0"
+            "version": "1.3.2"
         },
         },
         "name": "eap64-mongodb-persistent-s2i"
         "name": "eap64-mongodb-persistent-s2i"
     },
     },
     "labels": {
     "labels": {
         "template": "eap64-mongodb-persistent-s2i",
         "template": "eap64-mongodb-persistent-s2i",
-        "xpaas": "1.2.0"
+        "xpaas": "1.3.2"
     },
     },
     "parameters": [
     "parameters": [
         {
         {
@@ -82,6 +82,12 @@
             "required": false
             "required": false
         },
         },
         {
         {
+            "description": "The name of the service account to use for the deployment.  The service account should be configured to allow useage of the secret(s) specified by HTTPS_SECRET and JGROUPS_ENCRYPT_SECRET.",
+            "name": "SERVICE_ACCOUNT_NAME",
+            "value": "eap-service-account",
+            "required": true
+        },
+        {
             "description": "The name of the secret containing the keystore file",
             "description": "The name of the secret containing the keystore file",
             "name": "HTTPS_SECRET",
             "name": "HTTPS_SECRET",
             "value": "eap-app-secret",
             "value": "eap-app-secret",
@@ -94,6 +100,12 @@
             "required": false
             "required": false
         },
         },
         {
         {
+            "description": "The type of the keystore file (JKS or JCEKS)",
+            "name": "HTTPS_KEYSTORE_TYPE",
+            "value": "",
+            "required": false
+        },
+        {
             "description": "The name associated with the server certificate",
             "description": "The name associated with the server certificate",
             "name": "HTTPS_NAME",
             "name": "HTTPS_NAME",
             "value": "",
             "value": "",
@@ -213,6 +225,12 @@
             "from": "[a-zA-Z0-9]{8}",
             "from": "[a-zA-Z0-9]{8}",
             "generate": "expression",
             "generate": "expression",
             "required": true
             "required": true
+        },
+        {
+            "description": "Controls whether exploded deployment content should be automatically deployed",
+            "name": "AUTO_DEPLOY_EXPLODED",
+            "value": "false",
+            "required": false
         }
         }
     ],
     ],
     "objects": [
     "objects": [
@@ -366,7 +384,7 @@
                         "from": {
                         "from": {
                             "kind": "ImageStreamTag",
                             "kind": "ImageStreamTag",
                             "namespace": "${IMAGE_STREAM_NAMESPACE}",
                             "namespace": "${IMAGE_STREAM_NAMESPACE}",
-                            "name": "jboss-eap64-openshift:1.2"
+                            "name": "jboss-eap64-openshift:1.4"
                         }
                         }
                     }
                     }
                 },
                 },
@@ -421,8 +439,8 @@
                                 "${APPLICATION_NAME}"
                                 "${APPLICATION_NAME}"
                             ],
                             ],
                             "from": {
                             "from": {
-                                "kind": "ImageStream",
-                                "name": "${APPLICATION_NAME}"
+                                "kind": "ImageStreamTag",
+                                "name": "${APPLICATION_NAME}:latest"
                             }
                             }
                         }
                         }
                     },
                     },
@@ -443,7 +461,7 @@
                         }
                         }
                     },
                     },
                     "spec": {
                     "spec": {
-                        "serviceAccountName": "eap-service-account",
+                        "serviceAccountName": "${SERVICE_ACCOUNT_NAME}",
                         "terminationGracePeriodSeconds": 60,
                         "terminationGracePeriodSeconds": 60,
                         "containers": [
                         "containers": [
                             {
                             {
@@ -560,6 +578,10 @@
                                         "value": "${HTTPS_KEYSTORE}"
                                         "value": "${HTTPS_KEYSTORE}"
                                     },
                                     },
                                     {
                                     {
+                                        "name": "HTTPS_KEYSTORE_TYPE",
+                                        "value": "${HTTPS_KEYSTORE_TYPE}"
+                                    },
+                                    {
                                         "name": "HTTPS_NAME",
                                         "name": "HTTPS_NAME",
                                         "value": "${HTTPS_NAME}"
                                         "value": "${HTTPS_NAME}"
                                     },
                                     },
@@ -602,6 +624,10 @@
                                     {
                                     {
                                         "name": "JGROUPS_CLUSTER_PASSWORD",
                                         "name": "JGROUPS_CLUSTER_PASSWORD",
                                         "value": "${JGROUPS_CLUSTER_PASSWORD}"
                                         "value": "${JGROUPS_CLUSTER_PASSWORD}"
+                                    },
+                                    {
+                                        "name": "AUTO_DEPLOY_EXPLODED",
+                                        "value": "${AUTO_DEPLOY_EXPLODED}"
                                     }
                                     }
                                 ]
                                 ]
                             }
                             }

+ 32 - 6
roles/openshift_examples/files/examples/v1.3/xpaas-templates/eap64-mongodb-s2i.json

@@ -6,13 +6,13 @@
             "description": "Application template for EAP 6 MongoDB applications built using S2I.",
             "description": "Application template for EAP 6 MongoDB applications built using S2I.",
             "iconClass": "icon-jboss",
             "iconClass": "icon-jboss",
             "tags": "eap,mongodb,javaee,java,database,jboss,xpaas",
             "tags": "eap,mongodb,javaee,java,database,jboss,xpaas",
-            "version": "1.2.0"
+            "version": "1.3.2"
         },
         },
         "name": "eap64-mongodb-s2i"
         "name": "eap64-mongodb-s2i"
     },
     },
     "labels": {
     "labels": {
         "template": "eap64-mongodb-s2i",
         "template": "eap64-mongodb-s2i",
-        "xpaas": "1.2.0"
+        "xpaas": "1.3.2"
     },
     },
     "parameters": [
     "parameters": [
         {
         {
@@ -76,6 +76,12 @@
             "required": false
             "required": false
         },
         },
         {
         {
+            "description": "The name of the service account to use for the deployment.  The service account should be configured to allow useage of the secret(s) specified by HTTPS_SECRET and JGROUPS_ENCRYPT_SECRET.",
+            "name": "SERVICE_ACCOUNT_NAME",
+            "value": "eap-service-account",
+            "required": true
+        },
+        {
             "description": "The name of the secret containing the keystore file",
             "description": "The name of the secret containing the keystore file",
             "name": "HTTPS_SECRET",
             "name": "HTTPS_SECRET",
             "value": "eap-app-secret",
             "value": "eap-app-secret",
@@ -88,6 +94,12 @@
             "required": false
             "required": false
         },
         },
         {
         {
+            "description": "The type of the keystore file (JKS or JCEKS)",
+            "name": "HTTPS_KEYSTORE_TYPE",
+            "value": "",
+            "required": false
+        },
+        {
             "description": "The name associated with the server certificate",
             "description": "The name associated with the server certificate",
             "name": "HTTPS_NAME",
             "name": "HTTPS_NAME",
             "value": "",
             "value": "",
@@ -207,6 +219,12 @@
             "from": "[a-zA-Z0-9]{8}",
             "from": "[a-zA-Z0-9]{8}",
             "generate": "expression",
             "generate": "expression",
             "required": true
             "required": true
+        },
+        {
+            "description": "Controls whether exploded deployment content should be automatically deployed",
+            "name": "AUTO_DEPLOY_EXPLODED",
+            "value": "false",
+            "required": false
         }
         }
     ],
     ],
     "objects": [
     "objects": [
@@ -360,7 +378,7 @@
                         "from": {
                         "from": {
                             "kind": "ImageStreamTag",
                             "kind": "ImageStreamTag",
                             "namespace": "${IMAGE_STREAM_NAMESPACE}",
                             "namespace": "${IMAGE_STREAM_NAMESPACE}",
-                            "name": "jboss-eap64-openshift:1.2"
+                            "name": "jboss-eap64-openshift:1.4"
                         }
                         }
                     }
                     }
                 },
                 },
@@ -415,8 +433,8 @@
                                 "${APPLICATION_NAME}"
                                 "${APPLICATION_NAME}"
                             ],
                             ],
                             "from": {
                             "from": {
-                                "kind": "ImageStream",
-                                "name": "${APPLICATION_NAME}"
+                                "kind": "ImageStreamTag",
+                                "name": "${APPLICATION_NAME}:latest"
                             }
                             }
                         }
                         }
                     },
                     },
@@ -437,7 +455,7 @@
                         }
                         }
                     },
                     },
                     "spec": {
                     "spec": {
-                        "serviceAccountName": "eap-service-account",
+                        "serviceAccountName": "${SERVICE_ACCOUNT_NAME}",
                         "terminationGracePeriodSeconds": 60,
                         "terminationGracePeriodSeconds": 60,
                         "containers": [
                         "containers": [
                             {
                             {
@@ -554,6 +572,10 @@
                                         "value": "${HTTPS_KEYSTORE}"
                                         "value": "${HTTPS_KEYSTORE}"
                                     },
                                     },
                                     {
                                     {
+                                        "name": "HTTPS_KEYSTORE_TYPE",
+                                        "value": "${HTTPS_KEYSTORE_TYPE}"
+                                    },
+                                    {
                                         "name": "HTTPS_NAME",
                                         "name": "HTTPS_NAME",
                                         "value": "${HTTPS_NAME}"
                                         "value": "${HTTPS_NAME}"
                                     },
                                     },
@@ -596,6 +618,10 @@
                                     {
                                     {
                                         "name": "JGROUPS_CLUSTER_PASSWORD",
                                         "name": "JGROUPS_CLUSTER_PASSWORD",
                                         "value": "${JGROUPS_CLUSTER_PASSWORD}"
                                         "value": "${JGROUPS_CLUSTER_PASSWORD}"
+                                    },
+                                    {
+                                        "name": "AUTO_DEPLOY_EXPLODED",
+                                        "value": "${AUTO_DEPLOY_EXPLODED}"
                                     }
                                     }
                                 ]
                                 ]
                             }
                             }

+ 36 - 6
roles/openshift_examples/files/examples/v1.3/xpaas-templates/eap64-mysql-persistent-s2i.json

@@ -6,13 +6,13 @@
             "description": "Application template for EAP 6 MySQL applications with persistent storage built using S2I.",
             "description": "Application template for EAP 6 MySQL applications with persistent storage built using S2I.",
             "iconClass": "icon-jboss",
             "iconClass": "icon-jboss",
             "tags": "eap,mysql,javaee,java,database,jboss,xpaas",
             "tags": "eap,mysql,javaee,java,database,jboss,xpaas",
-            "version": "1.2.0"
+            "version": "1.3.2"
         },
         },
         "name": "eap64-mysql-persistent-s2i"
         "name": "eap64-mysql-persistent-s2i"
     },
     },
     "labels": {
     "labels": {
         "template": "eap64-mysql-persistent-s2i",
         "template": "eap64-mysql-persistent-s2i",
-        "xpaas": "1.2.0"
+        "xpaas": "1.3.2"
     },
     },
     "parameters": [
     "parameters": [
         {
         {
@@ -82,6 +82,12 @@
             "required": false
             "required": false
         },
         },
         {
         {
+            "description": "The name of the service account to use for the deployment.  The service account should be configured to allow useage of the secret(s) specified by HTTPS_SECRET and JGROUPS_ENCRYPT_SECRET.",
+            "name": "SERVICE_ACCOUNT_NAME",
+            "value": "eap-service-account",
+            "required": true
+        },
+        {
             "description": "The name of the secret containing the keystore file",
             "description": "The name of the secret containing the keystore file",
             "name": "HTTPS_SECRET",
             "name": "HTTPS_SECRET",
             "value": "eap-app-secret",
             "value": "eap-app-secret",
@@ -94,6 +100,12 @@
             "required": false
             "required": false
         },
         },
         {
         {
+            "description": "The type of the keystore file (JKS or JCEKS)",
+            "name": "HTTPS_KEYSTORE_TYPE",
+            "value": "",
+            "required": false
+        },
+        {
             "description": "The name associated with the server certificate",
             "description": "The name associated with the server certificate",
             "name": "HTTPS_NAME",
             "name": "HTTPS_NAME",
             "value": "",
             "value": "",
@@ -216,6 +228,12 @@
             "from": "[a-zA-Z0-9]{8}",
             "from": "[a-zA-Z0-9]{8}",
             "generate": "expression",
             "generate": "expression",
             "required": true
             "required": true
+        },
+        {
+            "description": "Controls whether exploded deployment content should be automatically deployed",
+            "name": "AUTO_DEPLOY_EXPLODED",
+            "value": "false",
+            "required": false
         }
         }
     ],
     ],
     "objects": [
     "objects": [
@@ -369,7 +387,7 @@
                         "from": {
                         "from": {
                             "kind": "ImageStreamTag",
                             "kind": "ImageStreamTag",
                             "namespace": "${IMAGE_STREAM_NAMESPACE}",
                             "namespace": "${IMAGE_STREAM_NAMESPACE}",
-                            "name": "jboss-eap64-openshift:1.2"
+                            "name": "jboss-eap64-openshift:1.4"
                         }
                         }
                     }
                     }
                 },
                 },
@@ -424,8 +442,8 @@
                                 "${APPLICATION_NAME}"
                                 "${APPLICATION_NAME}"
                             ],
                             ],
                             "from": {
                             "from": {
-                                "kind": "ImageStream",
-                                "name": "${APPLICATION_NAME}"
+                                "kind": "ImageStreamTag",
+                                "name": "${APPLICATION_NAME}:latest"
                             }
                             }
                         }
                         }
                     },
                     },
@@ -446,7 +464,7 @@
                         }
                         }
                     },
                     },
                     "spec": {
                     "spec": {
-                        "serviceAccountName": "eap-service-account",
+                        "serviceAccountName": "${SERVICE_ACCOUNT_NAME}",
                         "terminationGracePeriodSeconds": 60,
                         "terminationGracePeriodSeconds": 60,
                         "containers": [
                         "containers": [
                             {
                             {
@@ -563,6 +581,10 @@
                                         "value": "${HTTPS_KEYSTORE}"
                                         "value": "${HTTPS_KEYSTORE}"
                                     },
                                     },
                                     {
                                     {
+                                        "name": "HTTPS_KEYSTORE_TYPE",
+                                        "value": "${HTTPS_KEYSTORE_TYPE}"
+                                    },
+                                    {
                                         "name": "HTTPS_NAME",
                                         "name": "HTTPS_NAME",
                                         "value": "${HTTPS_NAME}"
                                         "value": "${HTTPS_NAME}"
                                     },
                                     },
@@ -605,6 +627,14 @@
                                     {
                                     {
                                         "name": "JGROUPS_CLUSTER_PASSWORD",
                                         "name": "JGROUPS_CLUSTER_PASSWORD",
                                         "value": "${JGROUPS_CLUSTER_PASSWORD}"
                                         "value": "${JGROUPS_CLUSTER_PASSWORD}"
+                                    },
+                                    {
+                                        "name": "TIMER_SERVICE_DATA_STORE",
+                                        "value": "${APPLICATION_NAME}-mysql"
+                                    },
+                                    {
+                                        "name": "AUTO_DEPLOY_EXPLODED",
+                                        "value": "${AUTO_DEPLOY_EXPLODED}"
                                     }
                                     }
                                 ]
                                 ]
                             }
                             }

+ 36 - 6
roles/openshift_examples/files/examples/v1.3/xpaas-templates/eap64-mysql-s2i.json

@@ -6,13 +6,13 @@
             "description": "Application template for EAP 6 MySQL applications built using S2I.",
             "description": "Application template for EAP 6 MySQL applications built using S2I.",
             "iconClass": "icon-jboss",
             "iconClass": "icon-jboss",
             "tags": "eap,mysql,javaee,java,database,jboss,xpaas",
             "tags": "eap,mysql,javaee,java,database,jboss,xpaas",
-            "version": "1.2.0"
+            "version": "1.3.2"
         },
         },
         "name": "eap64-mysql-s2i"
         "name": "eap64-mysql-s2i"
     },
     },
     "labels": {
     "labels": {
         "template": "eap64-mysql-s2i",
         "template": "eap64-mysql-s2i",
-        "xpaas": "1.2.0"
+        "xpaas": "1.3.2"
     },
     },
     "parameters": [
     "parameters": [
         {
         {
@@ -76,6 +76,12 @@
             "required": false
             "required": false
         },
         },
         {
         {
+            "description": "The name of the service account to use for the deployment.  The service account should be configured to allow useage of the secret(s) specified by HTTPS_SECRET and JGROUPS_ENCRYPT_SECRET.",
+            "name": "SERVICE_ACCOUNT_NAME",
+            "value": "eap-service-account",
+            "required": true
+        },
+        {
             "description": "The name of the secret containing the keystore file",
             "description": "The name of the secret containing the keystore file",
             "name": "HTTPS_SECRET",
             "name": "HTTPS_SECRET",
             "value": "eap-app-secret",
             "value": "eap-app-secret",
@@ -88,6 +94,12 @@
             "required": false
             "required": false
         },
         },
         {
         {
+            "description": "The type of the keystore file (JKS or JCEKS)",
+            "name": "HTTPS_KEYSTORE_TYPE",
+            "value": "",
+            "required": false
+        },
+        {
             "description": "The name associated with the server certificate",
             "description": "The name associated with the server certificate",
             "name": "HTTPS_NAME",
             "name": "HTTPS_NAME",
             "value": "",
             "value": "",
@@ -210,6 +222,12 @@
             "from": "[a-zA-Z0-9]{8}",
             "from": "[a-zA-Z0-9]{8}",
             "generate": "expression",
             "generate": "expression",
             "required": true
             "required": true
+        },
+        {
+            "description": "Controls whether exploded deployment content should be automatically deployed",
+            "name": "AUTO_DEPLOY_EXPLODED",
+            "value": "false",
+            "required": false
         }
         }
     ],
     ],
     "objects": [
     "objects": [
@@ -363,7 +381,7 @@
                         "from": {
                         "from": {
                             "kind": "ImageStreamTag",
                             "kind": "ImageStreamTag",
                             "namespace": "${IMAGE_STREAM_NAMESPACE}",
                             "namespace": "${IMAGE_STREAM_NAMESPACE}",
-                            "name": "jboss-eap64-openshift:1.2"
+                            "name": "jboss-eap64-openshift:1.4"
                         }
                         }
                     }
                     }
                 },
                 },
@@ -418,8 +436,8 @@
                                 "${APPLICATION_NAME}"
                                 "${APPLICATION_NAME}"
                             ],
                             ],
                             "from": {
                             "from": {
-                                "kind": "ImageStream",
-                                "name": "${APPLICATION_NAME}"
+                                "kind": "ImageStreamTag",
+                                "name": "${APPLICATION_NAME}:latest"
                             }
                             }
                         }
                         }
                     },
                     },
@@ -440,7 +458,7 @@
                         }
                         }
                     },
                     },
                     "spec": {
                     "spec": {
-                        "serviceAccountName": "eap-service-account",
+                        "serviceAccountName": "${SERVICE_ACCOUNT_NAME}",
                         "terminationGracePeriodSeconds": 60,
                         "terminationGracePeriodSeconds": 60,
                         "containers": [
                         "containers": [
                             {
                             {
@@ -557,6 +575,10 @@
                                         "value": "${HTTPS_KEYSTORE}"
                                         "value": "${HTTPS_KEYSTORE}"
                                     },
                                     },
                                     {
                                     {
+                                        "name": "HTTPS_KEYSTORE_TYPE",
+                                        "value": "${HTTPS_KEYSTORE_TYPE}"
+                                    },
+                                    {
                                         "name": "HTTPS_NAME",
                                         "name": "HTTPS_NAME",
                                         "value": "${HTTPS_NAME}"
                                         "value": "${HTTPS_NAME}"
                                     },
                                     },
@@ -599,6 +621,14 @@
                                     {
                                     {
                                         "name": "JGROUPS_CLUSTER_PASSWORD",
                                         "name": "JGROUPS_CLUSTER_PASSWORD",
                                         "value": "${JGROUPS_CLUSTER_PASSWORD}"
                                         "value": "${JGROUPS_CLUSTER_PASSWORD}"
+                                    },
+                                    {
+                                        "name": "TIMER_SERVICE_DATA_STORE",
+                                        "value": "${APPLICATION_NAME}-mysql"
+                                    },
+                                    {
+                                        "name": "AUTO_DEPLOY_EXPLODED",
+                                        "value": "${AUTO_DEPLOY_EXPLODED}"
                                     }
                                     }
                                 ]
                                 ]
                             }
                             }

+ 40 - 6
roles/openshift_examples/files/examples/v1.3/xpaas-templates/eap64-postgresql-persistent-s2i.json

@@ -6,13 +6,13 @@
             "description": "Application template for EAP 6 PostgreSQL applications with persistent storage built using S2I.",
             "description": "Application template for EAP 6 PostgreSQL applications with persistent storage built using S2I.",
             "iconClass": "icon-jboss",
             "iconClass": "icon-jboss",
             "tags": "eap,postgresql,javaee,java,database,jboss,xpaas",
             "tags": "eap,postgresql,javaee,java,database,jboss,xpaas",
-            "version": "1.2.0"
+            "version": "1.3.2"
         },
         },
         "name": "eap64-postgresql-persistent-s2i"
         "name": "eap64-postgresql-persistent-s2i"
     },
     },
     "labels": {
     "labels": {
         "template": "eap64-postgresql-persistent-s2i",
         "template": "eap64-postgresql-persistent-s2i",
-        "xpaas": "1.2.0"
+        "xpaas": "1.3.2"
     },
     },
     "parameters": [
     "parameters": [
         {
         {
@@ -82,6 +82,12 @@
             "required": false
             "required": false
         },
         },
         {
         {
+            "description": "The name of the service account to use for the deployment.  The service account should be configured to allow useage of the secret(s) specified by HTTPS_SECRET and JGROUPS_ENCRYPT_SECRET.",
+            "name": "SERVICE_ACCOUNT_NAME",
+            "value": "eap-service-account",
+            "required": true
+        },
+        {
             "description": "The name of the secret containing the keystore file",
             "description": "The name of the secret containing the keystore file",
             "name": "HTTPS_SECRET",
             "name": "HTTPS_SECRET",
             "value": "eap-app-secret",
             "value": "eap-app-secret",
@@ -94,6 +100,12 @@
             "required": false
             "required": false
         },
         },
         {
         {
+            "description": "The type of the keystore file (JKS or JCEKS)",
+            "name": "HTTPS_KEYSTORE_TYPE",
+            "value": "",
+            "required": false
+        },
+        {
             "description": "The name associated with the server certificate",
             "description": "The name associated with the server certificate",
             "name": "HTTPS_NAME",
             "name": "HTTPS_NAME",
             "value": "",
             "value": "",
@@ -201,6 +213,12 @@
             "from": "[a-zA-Z0-9]{8}",
             "from": "[a-zA-Z0-9]{8}",
             "generate": "expression",
             "generate": "expression",
             "required": true
             "required": true
+        },
+        {
+            "description": "Controls whether exploded deployment content should be automatically deployed",
+            "name": "AUTO_DEPLOY_EXPLODED",
+            "value": "false",
+            "required": false
         }
         }
     ],
     ],
     "objects": [
     "objects": [
@@ -354,7 +372,7 @@
                         "from": {
                         "from": {
                             "kind": "ImageStreamTag",
                             "kind": "ImageStreamTag",
                             "namespace": "${IMAGE_STREAM_NAMESPACE}",
                             "namespace": "${IMAGE_STREAM_NAMESPACE}",
-                            "name": "jboss-eap64-openshift:1.2"
+                            "name": "jboss-eap64-openshift:1.4"
                         }
                         }
                     }
                     }
                 },
                 },
@@ -409,8 +427,8 @@
                                 "${APPLICATION_NAME}"
                                 "${APPLICATION_NAME}"
                             ],
                             ],
                             "from": {
                             "from": {
-                                "kind": "ImageStream",
-                                "name": "${APPLICATION_NAME}"
+                                "kind": "ImageStreamTag",
+                                "name": "${APPLICATION_NAME}:latest"
                             }
                             }
                         }
                         }
                     },
                     },
@@ -431,7 +449,7 @@
                         }
                         }
                     },
                     },
                     "spec": {
                     "spec": {
-                        "serviceAccountName": "eap-service-account",
+                        "serviceAccountName": "${SERVICE_ACCOUNT_NAME}",
                         "terminationGracePeriodSeconds": 60,
                         "terminationGracePeriodSeconds": 60,
                         "containers": [
                         "containers": [
                             {
                             {
@@ -548,6 +566,10 @@
                                         "value": "${HTTPS_KEYSTORE}"
                                         "value": "${HTTPS_KEYSTORE}"
                                     },
                                     },
                                     {
                                     {
+                                        "name": "HTTPS_KEYSTORE_TYPE",
+                                        "value": "${HTTPS_KEYSTORE_TYPE}"
+                                    },
+                                    {
                                         "name": "HTTPS_NAME",
                                         "name": "HTTPS_NAME",
                                         "value": "${HTTPS_NAME}"
                                         "value": "${HTTPS_NAME}"
                                     },
                                     },
@@ -590,6 +612,14 @@
                                     {
                                     {
                                         "name": "JGROUPS_CLUSTER_PASSWORD",
                                         "name": "JGROUPS_CLUSTER_PASSWORD",
                                         "value": "${JGROUPS_CLUSTER_PASSWORD}"
                                         "value": "${JGROUPS_CLUSTER_PASSWORD}"
+                                    },
+                                    {
+                                        "name": "TIMER_SERVICE_DATA_STORE",
+                                        "value": "${APPLICATION_NAME}-postgresql"
+                                    },
+                                    {
+                                        "name": "AUTO_DEPLOY_EXPLODED",
+                                        "value": "${AUTO_DEPLOY_EXPLODED}"
                                     }
                                     }
                                 ]
                                 ]
                             }
                             }
@@ -693,6 +723,10 @@
                                         "value": "${POSTGRESQL_MAX_CONNECTIONS}"
                                         "value": "${POSTGRESQL_MAX_CONNECTIONS}"
                                     },
                                     },
                                     {
                                     {
+                                        "name": "POSTGRESQL_MAX_PREPARED_TRANSACTIONS",
+                                        "value": "${POSTGRESQL_MAX_CONNECTIONS}"
+                                    },
+                                    {
                                         "name": "POSTGRESQL_SHARED_BUFFERS",
                                         "name": "POSTGRESQL_SHARED_BUFFERS",
                                         "value": "${POSTGRESQL_SHARED_BUFFERS}"
                                         "value": "${POSTGRESQL_SHARED_BUFFERS}"
                                     }
                                     }

+ 40 - 6
roles/openshift_examples/files/examples/v1.3/xpaas-templates/eap64-postgresql-s2i.json

@@ -6,13 +6,13 @@
             "description": "Application template for EAP 6 PostgreSQL applications built using S2I.",
             "description": "Application template for EAP 6 PostgreSQL applications built using S2I.",
             "iconClass": "icon-jboss",
             "iconClass": "icon-jboss",
             "tags": "eap,postgresql,javaee,java,database,jboss,xpaas",
             "tags": "eap,postgresql,javaee,java,database,jboss,xpaas",
-            "version": "1.2.0"
+            "version": "1.3.2"
         },
         },
         "name": "eap64-postgresql-s2i"
         "name": "eap64-postgresql-s2i"
     },
     },
     "labels": {
     "labels": {
         "template": "eap64-postgresql-s2i",
         "template": "eap64-postgresql-s2i",
-        "xpaas": "1.2.0"
+        "xpaas": "1.3.2"
     },
     },
     "parameters": [
     "parameters": [
         {
         {
@@ -76,6 +76,12 @@
             "required": false
             "required": false
         },
         },
         {
         {
+            "description": "The name of the service account to use for the deployment.  The service account should be configured to allow useage of the secret(s) specified by HTTPS_SECRET and JGROUPS_ENCRYPT_SECRET.",
+            "name": "SERVICE_ACCOUNT_NAME",
+            "value": "eap-service-account",
+            "required": true
+        },
+        {
             "description": "The name of the secret containing the keystore file",
             "description": "The name of the secret containing the keystore file",
             "name": "HTTPS_SECRET",
             "name": "HTTPS_SECRET",
             "value": "eap-app-secret",
             "value": "eap-app-secret",
@@ -88,6 +94,12 @@
             "required": false
             "required": false
         },
         },
         {
         {
+            "description": "The type of the keystore file (JKS or JCEKS)",
+            "name": "HTTPS_KEYSTORE_TYPE",
+            "value": "",
+            "required": false
+        },
+        {
             "description": "The name associated with the server certificate",
             "description": "The name associated with the server certificate",
             "name": "HTTPS_NAME",
             "name": "HTTPS_NAME",
             "value": "",
             "value": "",
@@ -195,6 +207,12 @@
             "from": "[a-zA-Z0-9]{8}",
             "from": "[a-zA-Z0-9]{8}",
             "generate": "expression",
             "generate": "expression",
             "required": true
             "required": true
+        },
+        {
+            "description": "Controls whether exploded deployment content should be automatically deployed",
+            "name": "AUTO_DEPLOY_EXPLODED",
+            "value": "false",
+            "required": false
         }
         }
     ],
     ],
     "objects": [
     "objects": [
@@ -348,7 +366,7 @@
                         "from": {
                         "from": {
                             "kind": "ImageStreamTag",
                             "kind": "ImageStreamTag",
                             "namespace": "${IMAGE_STREAM_NAMESPACE}",
                             "namespace": "${IMAGE_STREAM_NAMESPACE}",
-                            "name": "jboss-eap64-openshift:1.2"
+                            "name": "jboss-eap64-openshift:1.4"
                         }
                         }
                     }
                     }
                 },
                 },
@@ -403,8 +421,8 @@
                                 "${APPLICATION_NAME}"
                                 "${APPLICATION_NAME}"
                             ],
                             ],
                             "from": {
                             "from": {
-                                "kind": "ImageStream",
-                                "name": "${APPLICATION_NAME}"
+                                "kind": "ImageStreamTag",
+                                "name": "${APPLICATION_NAME}:latest"
                             }
                             }
                         }
                         }
                     },
                     },
@@ -425,7 +443,7 @@
                         }
                         }
                     },
                     },
                     "spec": {
                     "spec": {
-                        "serviceAccountName": "eap-service-account",
+                        "serviceAccountName": "${SERVICE_ACCOUNT_NAME}",
                         "terminationGracePeriodSeconds": 60,
                         "terminationGracePeriodSeconds": 60,
                         "containers": [
                         "containers": [
                             {
                             {
@@ -542,6 +560,10 @@
                                         "value": "${HTTPS_KEYSTORE}"
                                         "value": "${HTTPS_KEYSTORE}"
                                     },
                                     },
                                     {
                                     {
+                                        "name": "HTTPS_KEYSTORE_TYPE",
+                                        "value": "${HTTPS_KEYSTORE_TYPE}"
+                                    },
+                                    {
                                         "name": "HTTPS_NAME",
                                         "name": "HTTPS_NAME",
                                         "value": "${HTTPS_NAME}"
                                         "value": "${HTTPS_NAME}"
                                     },
                                     },
@@ -584,6 +606,14 @@
                                     {
                                     {
                                         "name": "JGROUPS_CLUSTER_PASSWORD",
                                         "name": "JGROUPS_CLUSTER_PASSWORD",
                                         "value": "${JGROUPS_CLUSTER_PASSWORD}"
                                         "value": "${JGROUPS_CLUSTER_PASSWORD}"
+                                    },
+                                    {
+                                        "name": "TIMER_SERVICE_DATA_STORE",
+                                        "value": "${APPLICATION_NAME}-postgresql"
+                                    },
+                                    {
+                                        "name": "AUTO_DEPLOY_EXPLODED",
+                                        "value": "${AUTO_DEPLOY_EXPLODED}"
                                     }
                                     }
                                 ]
                                 ]
                             }
                             }
@@ -681,6 +711,10 @@
                                         "value": "${POSTGRESQL_MAX_CONNECTIONS}"
                                         "value": "${POSTGRESQL_MAX_CONNECTIONS}"
                                     },
                                     },
                                     {
                                     {
+                                        "name": "POSTGRESQL_MAX_PREPARED_TRANSACTIONS",
+                                        "value": "${POSTGRESQL_MAX_CONNECTIONS}"
+                                    },
+                                    {
                                         "name": "POSTGRESQL_SHARED_BUFFERS",
                                         "name": "POSTGRESQL_SHARED_BUFFERS",
                                         "value": "${POSTGRESQL_SHARED_BUFFERS}"
                                         "value": "${POSTGRESQL_SHARED_BUFFERS}"
                                     }
                                     }

+ 143 - 50
roles/openshift_examples/files/examples/v1.3/xpaas-templates/eap64-sso-s2i.json

@@ -6,13 +6,13 @@
             "iconClass" : "icon-jboss",
             "iconClass" : "icon-jboss",
             "description": "Application template for EAP 6 applications built using S2I, enabled for SSO.",
             "description": "Application template for EAP 6 applications built using S2I, enabled for SSO.",
             "tags": "eap,javaee,java,jboss,xpaas,sso,keycloak",
             "tags": "eap,javaee,java,jboss,xpaas,sso,keycloak",
-            "version": "1.3.0"
+            "version": "1.3.2"
         },
         },
         "name": "eap64-sso-s2i"
         "name": "eap64-sso-s2i"
     },
     },
     "labels": {
     "labels": {
         "template": "eap64-sso-s2i",
         "template": "eap64-sso-s2i",
-        "xpaas": "1.3.0"
+        "xpaas": "1.3.2"
     },
     },
     "parameters": [
     "parameters": [
         {
         {
@@ -22,27 +22,27 @@
             "required": true
             "required": true
         },
         },
         {
         {
-            "description": "Custom hostname for http service route.  Leave blank for default hostname, e.g.: <application-name>-<project>.<default-domain-suffix>",
+            "description": "Hostname for http service route (e.g. eap-app-myproject.example.com).  Required for SSO-enabled applications.  This is added to the white list of redirects in the SSO server.",
             "name": "HOSTNAME_HTTP",
             "name": "HOSTNAME_HTTP",
             "value": "",
             "value": "",
-            "required": false
+            "required": true
         },
         },
         {
         {
-            "description": "Custom hostname for https service route.  Leave blank for default hostname, e.g.: secure-<application-name>-<project>.<default-domain-suffix>",
+            "description": "Hostname for https service route (e.g. secure-eap-app-myproject.example.com).  Required for SSO-enabled applications.  This is added to the white list of redirects in the SSO server.",
             "name": "HOSTNAME_HTTPS",
             "name": "HOSTNAME_HTTPS",
             "value": "",
             "value": "",
-            "required": false
+            "required": true
         },
         },
         {
         {
             "description": "Git source URI for application",
             "description": "Git source URI for application",
             "name": "SOURCE_REPOSITORY_URL",
             "name": "SOURCE_REPOSITORY_URL",
-            "value": "https://github.com/keycloak/keycloak-examples",
+            "value": "https://github.com/redhat-developer/redhat-sso-quickstarts",
             "required": true
             "required": true
         },
         },
         {
         {
             "description": "Git branch/tag reference",
             "description": "Git branch/tag reference",
             "name": "SOURCE_REPOSITORY_REF",
             "name": "SOURCE_REPOSITORY_REF",
-            "value": "0.4-openshift",
+            "value": "7.0.x-ose",
             "required": false
             "required": false
         },
         },
         {
         {
@@ -64,6 +64,12 @@
             "required": false
             "required": false
         },
         },
         {
         {
+            "description": "The name of the service account to use for the deployment.  The service account should be configured to allow useage of the secret(s) specified by HTTPS_SECRET and JGROUPS_ENCRYPT_SECRET.",
+            "name": "SERVICE_ACCOUNT_NAME",
+            "value": "eap-service-account",
+            "required": true
+        },
+        {
             "description": "The name of the secret containing the keystore file",
             "description": "The name of the secret containing the keystore file",
             "name": "HTTPS_SECRET",
             "name": "HTTPS_SECRET",
             "value": "eap-app-secret",
             "value": "eap-app-secret",
@@ -76,15 +82,21 @@
             "required": false
             "required": false
         },
         },
         {
         {
-            "description": "The name associated with the server certificate",
+            "description": "The type of the keystore file (JKS or JCEKS)",
+            "name": "HTTPS_KEYSTORE_TYPE",
+            "value": "",
+            "required": false
+        },
+        {
+            "description": "The name associated with the server certificate (e.g. jboss)",
             "name": "HTTPS_NAME",
             "name": "HTTPS_NAME",
-            "value": "jboss",
+            "value": "",
             "required": false
             "required": false
         },
         },
         {
         {
-            "description": "The password for the keystore and certificate",
+            "description": "The password for the keystore and certificate (e.g. mykeystorepass)",
             "name": "HTTPS_PASSWORD",
             "name": "HTTPS_PASSWORD",
-            "value": "mykeystorepass",
+            "value": "",
             "required": false
             "required": false
         },
         },
         {
         {
@@ -127,15 +139,15 @@
             "required": false
             "required": false
         },
         },
         {
         {
-            "description": "The name associated with the server certificate",
+            "description": "The name associated with the server certificate (e.g. secret-key)",
             "name": "JGROUPS_ENCRYPT_NAME",
             "name": "JGROUPS_ENCRYPT_NAME",
-            "value": "secret-key",
+            "value": "",
             "required": false
             "required": false
         },
         },
         {
         {
-            "description": "The password for the keystore and certificate",
+            "description": "The password for the keystore and certificate (e.g. password)",
             "name": "JGROUPS_ENCRYPT_PASSWORD",
             "name": "JGROUPS_ENCRYPT_PASSWORD",
-            "value": "password",
+            "value": "",
             "required": false
             "required": false
         },
         },
         {
         {
@@ -146,31 +158,43 @@
             "required": true
             "required": true
         },
         },
         {
         {
-            "description": "SSO Location",
-            "name": "SSO_URI",
+            "description": "Controls whether exploded deployment content should be automatically deployed",
+            "name": "AUTO_DEPLOY_EXPLODED",
+            "value": "false",
+            "required": false
+        },
+        {
+            "description": "The URL for the SSO server (e.g. https://secure-sso-myproject.example.com/auth).  This is the URL through which the user will be redirected when a login or token is required by the application.",
+            "name": "SSO_URL",
+            "value": "",
+            "required": true
+        },
+        {
+            "description": "The URL for the interal SSO service, where secure-sso is the kubernetes service exposed by the SSO server.  This is used to create the application client(s) (see SSO_USERNAME).  This can also be the same as SSO_URL.",
+            "name": "SSO_SERVICE_URL",
             "value": "https://secure-sso:8443/auth",
             "value": "https://secure-sso:8443/auth",
             "required": false
             "required": false
         },
         },
         {
         {
-            "description": "SSO Realm",
+            "description": "The SSO realm to which the application client(s) should be associated (e.g. demo).",
             "name": "SSO_REALM",
             "name": "SSO_REALM",
-            "value": "demo",
-            "required": false
+            "value": "",
+            "required": true
         },
         },
         {
         {
-            "description": "SSO Username",
+            "description": "The username used to access the SSO service.  This is used to create the appliction client(s) within the specified SSO realm. This should match the SSO_SERVICE_USERNAME specified through one of the sso70-* templates.",
             "name": "SSO_USERNAME",
             "name": "SSO_USERNAME",
             "value": "",
             "value": "",
             "required": false
             "required": false
         },
         },
         {
         {
-            "description": "SSO Password",
+            "description": "The password for the SSO service user.",
             "name": "SSO_PASSWORD",
             "name": "SSO_PASSWORD",
             "value": "",
             "value": "",
             "required": false
             "required": false
         },
         },
         {
         {
-            "description": "SSO Public Key. Public key is recommended to be passed into the template to avoid man-in-the-middle security vulnerability",
+            "description": "SSO Public Key. Public key is recommended to be passed into the template to avoid man-in-the-middle security vulnerability.  This can be retrieved from the SSO server, for the specified realm.",
             "name": "SSO_PUBLIC_KEY",
             "name": "SSO_PUBLIC_KEY",
             "value": "",
             "value": "",
             "required": false
             "required": false
@@ -182,21 +206,9 @@
             "required": false
             "required": false
         },
         },
         {
         {
-            "description": "Routes",
-            "name": "APPLICATION_ROUTES",
-            "value": "",
-            "required": false
-        },
-        {
-            "description": "Artifacts",
+            "description": "List of directories from which archives will be copied into the deployment folder.  If unspecified, all archives in /target will be copied.",
             "name": "ARTIFACT_DIR",
             "name": "ARTIFACT_DIR",
-            "value": "app-jee/target,service-jaxrs/target,app-profile-jee/target,app-profile-jee-saml/target",
-            "required": false
-        },
-        {
-            "description": "maven",
-            "name": "MAVEN_ARGS_APPEND",
-            "value": "",
+            "value": "app-jee-jsp/target,service-jee-jaxrs/target,app-profile-jee-jsp/target,app-profile-saml-jee-jsp/target",
             "required": false
             "required": false
         },
         },
         {
         {
@@ -208,7 +220,7 @@
         {
         {
             "description": "The name of the keystore file within the secret",
             "description": "The name of the keystore file within the secret",
             "name": "SSO_SAML_KEYSTORE",
             "name": "SSO_SAML_KEYSTORE",
-            "value": "/etc/sso-saml-secret-volume/keystore.jks",
+            "value": "keystore.jks",
             "required": false
             "required": false
         },
         },
         {
         {
@@ -235,6 +247,36 @@
             "name": "SSO_ENABLE_CORS",
             "name": "SSO_ENABLE_CORS",
             "value": "false",
             "value": "false",
             "required": false
             "required": false
+        },
+        {
+            "description": "SSO logout page for SAML applications",
+            "name": "SSO_SAML_LOGOUT_PAGE",
+            "value": "/",
+            "required": false
+        },
+        {
+            "description": "If true SSL communication between EAP and the SSO Server will be insecure (i.e. certificate validation is disabled with curl)",
+            "name": "SSO_DISABLE_SSL_CERTIFICATE_VALIDATION",
+            "value": "true",
+            "required": false
+        },
+        {
+            "description": "The name of the truststore file within the secret (e.g. truststore.jks)",
+            "name": "SSO_TRUSTSTORE",
+            "value": "",
+            "required": false
+        },
+        {
+            "description": "The password for the truststore and certificate (e.g. mykeystorepass)",
+            "name": "SSO_TRUSTSTORE_PASSWORD",
+            "value": "",
+            "required": false
+        },
+        {
+            "description": "The name of the secret containing the truststore file (e.g. truststore-secret). Used for volume secretName",
+            "name": "SSO_TRUSTSTORE_SECRET",
+            "value": "eap-app-secret",
+            "required": false
         }
         }
    ],
    ],
     "objects": [
     "objects": [
@@ -364,7 +406,7 @@
                         "from": {
                         "from": {
                             "kind": "ImageStreamTag",
                             "kind": "ImageStreamTag",
                             "namespace": "${IMAGE_STREAM_NAMESPACE}",
                             "namespace": "${IMAGE_STREAM_NAMESPACE}",
-                            "name": "jboss-eap64-openshift:1.3"
+                            "name": "jboss-eap64-openshift:1.4"
                         },
                         },
                         "env": [
                         "env": [
                             {
                             {
@@ -373,7 +415,7 @@
                             },
                             },
                             {
                             {
                                 "name": "MAVEN_ARGS_APPEND",
                                 "name": "MAVEN_ARGS_APPEND",
-                                "value": "${MAVEN_ARGS_APPEND}"
+                                "value": ""
                             }
                             }
                         ]
                         ]
                     }
                     }
@@ -429,8 +471,8 @@
                                 "${APPLICATION_NAME}"
                                 "${APPLICATION_NAME}"
                             ],
                             ],
                             "from": {
                             "from": {
-                                "kind": "ImageStream",
-                                "name": "${APPLICATION_NAME}"
+                                "kind": "ImageStreamTag",
+                                "name": "${APPLICATION_NAME}:latest"
                             }
                             }
                         }
                         }
                     },
                     },
@@ -451,7 +493,7 @@
                         }
                         }
                     },
                     },
                     "spec": {
                     "spec": {
-                        "serviceAccountName": "eap-service-account",
+                        "serviceAccountName": "${SERVICE_ACCOUNT_NAME}",
                         "terminationGracePeriodSeconds": 60,
                         "terminationGracePeriodSeconds": 60,
                         "containers": [
                         "containers": [
                             {
                             {
@@ -473,6 +515,11 @@
                                         "name": "eap-jgroups-keystore-volume",
                                         "name": "eap-jgroups-keystore-volume",
                                         "mountPath": "/etc/jgroups-encrypt-secret-volume",
                                         "mountPath": "/etc/jgroups-encrypt-secret-volume",
                                         "readOnly": true
                                         "readOnly": true
+                                    },
+                                    {
+                                        "name": "sso-truststore-volume",
+                                        "mountPath": "/etc/sso-secret-volume",
+                                        "readOnly": true
                                     }
                                     }
                                 ],
                                 ],
                                 "livenessProbe": {
                                 "livenessProbe": {
@@ -529,6 +576,14 @@
                                         }
                                         }
                                     },
                                     },
                                     {
                                     {
+                                        "name": "HOSTNAME_HTTP",
+                                        "value": "${HOSTNAME_HTTP}"
+                                    },
+                                    {
+                                        "name": "HOSTNAME_HTTPS",
+                                        "value": "${HOSTNAME_HTTPS}"
+                                    },
+                                    {
                                         "name": "HTTPS_KEYSTORE_DIR",
                                         "name": "HTTPS_KEYSTORE_DIR",
                                         "value": "/etc/eap-secret-volume"
                                         "value": "/etc/eap-secret-volume"
                                     },
                                     },
@@ -537,6 +592,10 @@
                                         "value": "${HTTPS_KEYSTORE}"
                                         "value": "${HTTPS_KEYSTORE}"
                                     },
                                     },
                                     {
                                     {
+                                        "name": "HTTPS_KEYSTORE_TYPE",
+                                        "value": "${HTTPS_KEYSTORE_TYPE}"
+                                    },
+                                    {
                                         "name": "HTTPS_NAME",
                                         "name": "HTTPS_NAME",
                                         "value": "${HTTPS_NAME}"
                                         "value": "${HTTPS_NAME}"
                                     },
                                     },
@@ -581,8 +640,16 @@
                                         "value": "${JGROUPS_CLUSTER_PASSWORD}"
                                         "value": "${JGROUPS_CLUSTER_PASSWORD}"
                                     },
                                     },
                                     {
                                     {
-                                        "name": "SSO_URI",
-                                        "value": "${SSO_URI}"
+                                        "name": "AUTO_DEPLOY_EXPLODED",
+                                        "value": "${AUTO_DEPLOY_EXPLODED}"
+                                    },
+                                    {
+                                        "name": "SSO_URL",
+                                        "value": "${SSO_URL}"
+                                    },
+                                    {
+                                        "name": "SSO_SERVICE_URL",
+                                        "value": "${SSO_SERVICE_URL}"
                                     },
                                     },
                                     {
                                     {
                                         "name": "SSO_REALM",
                                         "name": "SSO_REALM",
@@ -605,10 +672,6 @@
                                         "value": "${SSO_BEARER_ONLY}"
                                         "value": "${SSO_BEARER_ONLY}"
                                     },
                                     },
                                     {
                                     {
-                                        "name": "APPLICATION_ROUTES",
-                                        "value": "${APPLICATION_ROUTES}"
-                                    },
-                                    {
                                         "name": "SSO_SAML_KEYSTORE_SECRET",
                                         "name": "SSO_SAML_KEYSTORE_SECRET",
                                         "value": "${SSO_SAML_KEYSTORE_SECRET}"
                                         "value": "${SSO_SAML_KEYSTORE_SECRET}"
                                     },
                                     },
@@ -617,6 +680,10 @@
                                         "value": "${SSO_SAML_KEYSTORE}"
                                         "value": "${SSO_SAML_KEYSTORE}"
                                     },
                                     },
                                     {
                                     {
+                                        "name": "SSO_SAML_KEYSTORE_DIR",
+                                        "value": "/etc/sso-saml-secret-volume"
+                                    },
+                                    {
                                         "name": "SSO_SAML_CERTIFICATE_NAME",
                                         "name": "SSO_SAML_CERTIFICATE_NAME",
                                         "value": "${SSO_SAML_CERTIFICATE_NAME}"
                                         "value": "${SSO_SAML_CERTIFICATE_NAME}"
                                     },
                                     },
@@ -631,6 +698,26 @@
                                     {
                                     {
                                         "name": "SSO_ENABLE_CORS",
                                         "name": "SSO_ENABLE_CORS",
                                         "value": "${SSO_ENABLE_CORS}"
                                         "value": "${SSO_ENABLE_CORS}"
+                                    },
+                                    {
+                                        "name": "SSO_SAML_LOGOUT_PAGE",
+                                        "value": "${SSO_SAML_LOGOUT_PAGE}"
+                                    },
+                                    {
+                                        "name": "SSO_DISABLE_SSL_CERTIFICATE_VALIDATION",
+                                        "value": "${SSO_DISABLE_SSL_CERTIFICATE_VALIDATION}"
+                                    },
+                                    {
+                                        "name": "SSO_TRUSTSTORE",
+                                        "value": "${SSO_TRUSTSTORE}"
+                                    },
+                                    {
+                                        "name": "SSO_TRUSTSTORE_DIR",
+                                        "value": "/etc/sso-secret-volume"
+                                    },
+                                    {
+                                        "name": "SSO_TRUSTSTORE_PASSWORD",
+                                        "value": "${SSO_TRUSTSTORE_PASSWORD}"
                                     }
                                     }
                                 ]
                                 ]
                             }
                             }
@@ -653,6 +740,12 @@
                                 "secret": {
                                 "secret": {
                                     "secretName": "${JGROUPS_ENCRYPT_SECRET}"
                                     "secretName": "${JGROUPS_ENCRYPT_SECRET}"
                                 }
                                 }
+                            },
+                            {
+                                "name": "sso-truststore-volume",
+                                "secret": {
+                                    "secretName": "${SSO_TRUSTSTORE_SECRET}"
+                                }
                             }
                             }
                         ]
                         ]
                     }
                     }

+ 56 - 26
roles/openshift_examples/files/examples/v1.3/xpaas-templates/eap70-amq-persistent-s2i.json

@@ -6,13 +6,13 @@
             "description": "Application template for EAP 7 A-MQ applications with persistent storage built using S2I.",
             "description": "Application template for EAP 7 A-MQ applications with persistent storage built using S2I.",
             "iconClass": "icon-jboss",
             "iconClass": "icon-jboss",
             "tags": "eap,amq,javaee,java,messaging,jboss,xpaas",
             "tags": "eap,amq,javaee,java,messaging,jboss,xpaas",
-            "version": "1.3.1"
+            "version": "1.3.2"
         },
         },
         "name": "eap70-amq-persistent-s2i"
         "name": "eap70-amq-persistent-s2i"
     },
     },
     "labels": {
     "labels": {
         "template": "eap70-amq-persistent-s2i",
         "template": "eap70-amq-persistent-s2i",
-        "xpaas": "1.3.1"
+        "xpaas": "1.3.2"
     },
     },
     "parameters": [
     "parameters": [
         {
         {
@@ -88,9 +88,21 @@
             "required": false
             "required": false
         },
         },
         {
         {
+            "description": "List of packages that are allowed to be serialized for use in ObjectMessage, separated by commas. If your app doesn't use ObjectMessages, leave this blank. This is a security enforcement. For the rationale, see http://activemq.apache.org/objectmessage.html",
+            "name": "MQ_SERIALIZABLE_PACKAGES",
+            "value": "",
+            "required": false
+        },
+        {
+            "description": "The name of the service account to use for the deployment.  The service account should be configured to allow useage of the secret(s) specified by HTTPS_SECRET and JGROUPS_ENCRYPT_SECRET.",
+            "name": "SERVICE_ACCOUNT_NAME",
+            "value": "eap7-service-account",
+            "required": true
+        },
+        {
             "description": "The name of the secret containing the keystore file",
             "description": "The name of the secret containing the keystore file",
             "name": "HTTPS_SECRET",
             "name": "HTTPS_SECRET",
-            "value": "eap-app-secret",
+            "value": "eap7-app-secret",
             "required": false
             "required": false
         },
         },
         {
         {
@@ -100,6 +112,12 @@
             "required": false
             "required": false
         },
         },
         {
         {
+            "description": "The type of the keystore file (JKS or JCEKS)",
+            "name": "HTTPS_KEYSTORE_TYPE",
+            "value": "",
+            "required": false
+        },
+        {
             "description": "The name associated with the server certificate",
             "description": "The name associated with the server certificate",
             "name": "HTTPS_NAME",
             "name": "HTTPS_NAME",
             "value": "",
             "value": "",
@@ -126,18 +144,16 @@
             "required": false
             "required": false
         },
         },
         {
         {
-            "description": "User name for broker admin. If left empty, it will be generated.",
-            "name": "AMQ_ADMIN_USERNAME",
-            "from": "user[a-zA-Z0-9]{3}",
-            "generate": "expression",
-            "required": true
+            "description": "The discovery agent type to use for discovering mesh endpoints.  'dns' will use OpenShift's DNS service to resolve endpoints.  'kube' will use Kubernetes REST API to resolve service endpoints.  If using 'kube' the service account for the pod must have the 'view' role, which can be added via 'oc policy add-role-to-user view system:serviceaccount:<namespace>:default' where <namespace> is the project namespace.",
+            "name": "AMQ_MESH_DISCOVERY_TYPE",
+            "value": "kube",
+            "required": false
         },
         },
         {
         {
-            "description": "Password for broker admin. If left empty, it will be generated.",
-            "name": "AMQ_ADMIN_PASSWORD",
-            "from": "[a-zA-Z0-9]{8}",
-            "generate": "expression",
-            "required": true
+            "description": "The A-MQ storage usage limit",
+            "name": "AMQ_STORAGE_USAGE_LIMIT",
+            "value": "100 gb",
+            "required": false
         },
         },
         {
         {
             "description": "GitHub trigger secret",
             "description": "GitHub trigger secret",
@@ -162,7 +178,7 @@
         {
         {
             "description": "The name of the secret containing the keystore file",
             "description": "The name of the secret containing the keystore file",
             "name": "JGROUPS_ENCRYPT_SECRET",
             "name": "JGROUPS_ENCRYPT_SECRET",
-            "value": "eap-app-secret",
+            "value": "eap7-app-secret",
             "required": false
             "required": false
         },
         },
         {
         {
@@ -189,6 +205,12 @@
             "from": "[a-zA-Z0-9]{8}",
             "from": "[a-zA-Z0-9]{8}",
             "generate": "expression",
             "generate": "expression",
             "required": true
             "required": true
+        },
+        {
+            "description": "Controls whether exploded deployment content should be automatically deployed",
+            "name": "AUTO_DEPLOY_EXPLODED",
+            "value": "false",
+            "required": false
         }
         }
     ],
     ],
     "objects": [
     "objects": [
@@ -342,7 +364,7 @@
                         "from": {
                         "from": {
                             "kind": "ImageStreamTag",
                             "kind": "ImageStreamTag",
                             "namespace": "${IMAGE_STREAM_NAMESPACE}",
                             "namespace": "${IMAGE_STREAM_NAMESPACE}",
-                            "name": "jboss-eap70-openshift:1.3"
+                            "name": "jboss-eap70-openshift:1.4"
                         }
                         }
                     }
                     }
                 },
                 },
@@ -397,8 +419,8 @@
                                 "${APPLICATION_NAME}"
                                 "${APPLICATION_NAME}"
                             ],
                             ],
                             "from": {
                             "from": {
-                                "kind": "ImageStream",
-                                "name": "${APPLICATION_NAME}"
+                                "kind": "ImageStreamTag",
+                                "name": "${APPLICATION_NAME}:latest"
                             }
                             }
                         }
                         }
                     },
                     },
@@ -419,7 +441,7 @@
                         }
                         }
                     },
                     },
                     "spec": {
                     "spec": {
-                        "serviceAccountName": "eap-service-account",
+                        "serviceAccountName": "${SERVICE_ACCOUNT_NAME}",
                         "terminationGracePeriodSeconds": 60,
                         "terminationGracePeriodSeconds": 60,
                         "containers": [
                         "containers": [
                             {
                             {
@@ -508,6 +530,10 @@
                                         "value": "${MQ_TOPICS}"
                                         "value": "${MQ_TOPICS}"
                                     },
                                     },
                                     {
                                     {
+                                        "name": "MQ_SERIALIZABLE_PACKAGES",
+                                        "value": "${MQ_SERIALIZABLE_PACKAGES}"
+                                    },
+                                    {
                                         "name": "OPENSHIFT_KUBE_PING_LABELS",
                                         "name": "OPENSHIFT_KUBE_PING_LABELS",
                                         "value": "application=${APPLICATION_NAME}"
                                         "value": "application=${APPLICATION_NAME}"
                                     },
                                     },
@@ -528,6 +554,10 @@
                                         "value": "${HTTPS_KEYSTORE}"
                                         "value": "${HTTPS_KEYSTORE}"
                                     },
                                     },
                                     {
                                     {
+                                        "name": "HTTPS_KEYSTORE_TYPE",
+                                        "value": "${HTTPS_KEYSTORE_TYPE}"
+                                    },
+                                    {
                                         "name": "HTTPS_NAME",
                                         "name": "HTTPS_NAME",
                                         "value": "${HTTPS_NAME}"
                                         "value": "${HTTPS_NAME}"
                                     },
                                     },
@@ -558,6 +588,10 @@
                                     {
                                     {
                                         "name": "JGROUPS_CLUSTER_PASSWORD",
                                         "name": "JGROUPS_CLUSTER_PASSWORD",
                                         "value": "${JGROUPS_CLUSTER_PASSWORD}"
                                         "value": "${JGROUPS_CLUSTER_PASSWORD}"
+                                    },
+                                    {
+                                        "name": "AUTO_DEPLOY_EXPLODED",
+                                        "value": "${AUTO_DEPLOY_EXPLODED}"
                                     }
                                     }
                                 ]
                                 ]
                             }
                             }
@@ -713,6 +747,10 @@
                                         "value": "${MQ_TOPICS}"
                                         "value": "${MQ_TOPICS}"
                                     },
                                     },
                                     {
                                     {
+                                        "name": "MQ_SERIALIZABLE_PACKAGES",
+                                        "value": "${MQ_SERIALIZABLE_PACKAGES}"
+                                    },
+                                    {
                                         "name": "AMQ_SPLIT",
                                         "name": "AMQ_SPLIT",
                                         "value": "${AMQ_SPLIT}"
                                         "value": "${AMQ_SPLIT}"
                                     },
                                     },
@@ -735,14 +773,6 @@
                                     {
                                     {
                                         "name": "AMQ_STORAGE_USAGE_LIMIT",
                                         "name": "AMQ_STORAGE_USAGE_LIMIT",
                                         "value": "${AMQ_STORAGE_USAGE_LIMIT}"
                                         "value": "${AMQ_STORAGE_USAGE_LIMIT}"
-                                    },
-                                    {
-                                        "name": "AMQ_ADMIN_USERNAME",
-                                        "value": "${AMQ_ADMIN_USERNAME}"
-                                    },
-                                    {
-                                        "name": "AMQ_ADMIN_PASSWORD",
-                                        "value": "${AMQ_ADMIN_PASSWORD}"
                                     }
                                     }
                                 ]
                                 ]
                             }
                             }

+ 70 - 20
roles/openshift_examples/files/examples/v1.3/xpaas-templates/eap70-amq-s2i.json

@@ -6,13 +6,13 @@
             "description": "Application template for EAP 7 A-MQ applications built using S2I.",
             "description": "Application template for EAP 7 A-MQ applications built using S2I.",
             "iconClass": "icon-jboss",
             "iconClass": "icon-jboss",
             "tags": "eap,amq,javaee,java,messaging,jboss,xpaas",
             "tags": "eap,amq,javaee,java,messaging,jboss,xpaas",
-            "version": "1.3.1"
+            "version": "1.3.2"
         },
         },
         "name": "eap70-amq-s2i"
         "name": "eap70-amq-s2i"
     },
     },
     "labels": {
     "labels": {
         "template": "eap70-amq-s2i",
         "template": "eap70-amq-s2i",
-        "xpaas": "1.3.1"
+        "xpaas": "1.3.2"
     },
     },
     "parameters": [
     "parameters": [
         {
         {
@@ -76,6 +76,18 @@
             "required": false
             "required": false
         },
         },
         {
         {
+            "description": "List of packages that are allowed to be serialized for use in ObjectMessage, separated by commas. If your app doesn't use ObjectMessages, leave this blank. This is a security enforcement. For the rationale, see http://activemq.apache.org/objectmessage.html",
+            "name": "MQ_SERIALIZABLE_PACKAGES",
+            "value": "",
+            "required": false
+        },
+        {
+            "description": "The name of the service account to use for the deployment.  The service account should be configured to allow useage of the secret(s) specified by HTTPS_SECRET and JGROUPS_ENCRYPT_SECRET.",
+            "name": "SERVICE_ACCOUNT_NAME",
+            "value": "eap7-service-account",
+            "required": true
+        },
+        {
             "description": "The name of the secret containing the keystore file",
             "description": "The name of the secret containing the keystore file",
             "name": "HTTPS_SECRET",
             "name": "HTTPS_SECRET",
             "value": "eap7-app-secret",
             "value": "eap7-app-secret",
@@ -88,6 +100,12 @@
             "required": false
             "required": false
         },
         },
         {
         {
+            "description": "The type of the keystore file (JKS or JCEKS)",
+            "name": "HTTPS_KEYSTORE_TYPE",
+            "value": "",
+            "required": false
+        },
+        {
             "description": "The name associated with the server certificate",
             "description": "The name associated with the server certificate",
             "name": "HTTPS_NAME",
             "name": "HTTPS_NAME",
             "value": "",
             "value": "",
@@ -114,18 +132,16 @@
             "required": false
             "required": false
         },
         },
         {
         {
-            "description": "User name for broker admin. If left empty, it will be generated.",
-            "name": "AMQ_ADMIN_USERNAME",
-            "from": "user[a-zA-Z0-9]{3}",
-            "generate": "expression",
-            "required": true
+            "description": "The discovery agent type to use for discovering mesh endpoints.  'dns' will use OpenShift's DNS service to resolve endpoints.  'kube' will use Kubernetes REST API to resolve service endpoints.  If using 'kube' the service account for the pod must have the 'view' role, which can be added via 'oc policy add-role-to-user view system:serviceaccount:<namespace>:default' where <namespace> is the project namespace.",
+            "name": "AMQ_MESH_DISCOVERY_TYPE",
+            "value": "kube",
+            "required": false
         },
         },
         {
         {
-            "description": "Password for broker admin. If left empty, it will be generated.",
-            "name": "AMQ_ADMIN_PASSWORD",
-            "from": "[a-zA-Z0-9]{8}",
-            "generate": "expression",
-            "required": true
+            "description": "The A-MQ storage usage limit",
+            "name": "AMQ_STORAGE_USAGE_LIMIT",
+            "value": "100 gb",
+            "required": false
         },
         },
         {
         {
             "description": "GitHub trigger secret",
             "description": "GitHub trigger secret",
@@ -177,6 +193,12 @@
             "from": "[a-zA-Z0-9]{8}",
             "from": "[a-zA-Z0-9]{8}",
             "generate": "expression",
             "generate": "expression",
             "required": true
             "required": true
+        },
+        {
+            "description": "Controls whether exploded deployment content should be automatically deployed",
+            "name": "AUTO_DEPLOY_EXPLODED",
+            "value": "false",
+            "required": false
         }
         }
     ],
     ],
     "objects": [
     "objects": [
@@ -330,7 +352,7 @@
                         "from": {
                         "from": {
                             "kind": "ImageStreamTag",
                             "kind": "ImageStreamTag",
                             "namespace": "${IMAGE_STREAM_NAMESPACE}",
                             "namespace": "${IMAGE_STREAM_NAMESPACE}",
-                            "name": "jboss-eap70-openshift:1.3"
+                            "name": "jboss-eap70-openshift:1.4"
                         }
                         }
                     }
                     }
                 },
                 },
@@ -385,8 +407,8 @@
                                 "${APPLICATION_NAME}"
                                 "${APPLICATION_NAME}"
                             ],
                             ],
                             "from": {
                             "from": {
-                                "kind": "ImageStream",
-                                "name": "${APPLICATION_NAME}"
+                                "kind": "ImageStreamTag",
+                                "name": "${APPLICATION_NAME}:latest"
                             }
                             }
                         }
                         }
                     },
                     },
@@ -407,7 +429,7 @@
                         }
                         }
                     },
                     },
                     "spec": {
                     "spec": {
-                        "serviceAccountName": "eap7-service-account",
+                        "serviceAccountName": "${SERVICE_ACCOUNT_NAME}",
                         "terminationGracePeriodSeconds": 60,
                         "terminationGracePeriodSeconds": 60,
                         "containers": [
                         "containers": [
                             {
                             {
@@ -496,6 +518,10 @@
                                         "value": "${MQ_TOPICS}"
                                         "value": "${MQ_TOPICS}"
                                     },
                                     },
                                     {
                                     {
+                                        "name": "MQ_SERIALIZABLE_PACKAGES",
+                                        "value": "${MQ_SERIALIZABLE_PACKAGES}"
+                                    },
+                                    {
                                         "name": "OPENSHIFT_KUBE_PING_LABELS",
                                         "name": "OPENSHIFT_KUBE_PING_LABELS",
                                         "value": "application=${APPLICATION_NAME}"
                                         "value": "application=${APPLICATION_NAME}"
                                     },
                                     },
@@ -516,6 +542,10 @@
                                         "value": "${HTTPS_KEYSTORE}"
                                         "value": "${HTTPS_KEYSTORE}"
                                     },
                                     },
                                     {
                                     {
+                                        "name": "HTTPS_KEYSTORE_TYPE",
+                                        "value": "${HTTPS_KEYSTORE_TYPE}"
+                                    },
+                                    {
                                         "name": "HTTPS_NAME",
                                         "name": "HTTPS_NAME",
                                         "value": "${HTTPS_NAME}"
                                         "value": "${HTTPS_NAME}"
                                     },
                                     },
@@ -546,6 +576,10 @@
                                     {
                                     {
                                         "name": "JGROUPS_CLUSTER_PASSWORD",
                                         "name": "JGROUPS_CLUSTER_PASSWORD",
                                         "value": "${JGROUPS_CLUSTER_PASSWORD}"
                                         "value": "${JGROUPS_CLUSTER_PASSWORD}"
+                                    },
+                                    {
+                                        "name": "AUTO_DEPLOY_EXPLODED",
+                                        "value": "${AUTO_DEPLOY_EXPLODED}"
                                     }
                                     }
                                 ]
                                 ]
                             }
                             }
@@ -692,12 +726,28 @@
                                         "value": "${MQ_TOPICS}"
                                         "value": "${MQ_TOPICS}"
                                     },
                                     },
                                     {
                                     {
-                                        "name": "AMQ_ADMIN_USERNAME",
-                                        "value": "${AMQ_ADMIN_USERNAME}"
+                                        "name": "MQ_SERIALIZABLE_PACKAGES",
+                                        "value": "${MQ_SERIALIZABLE_PACKAGES}"
+                                    },
+                                    {
+                                        "name": "AMQ_MESH_DISCOVERY_TYPE",
+                                        "value": "${AMQ_MESH_DISCOVERY_TYPE}"
+                                    },
+                                    {
+                                        "name": "AMQ_MESH_SERVICE_NAME",
+                                        "value": "${APPLICATION_NAME}-amq-tcp"
+                                    },
+                                    {
+                                        "name": "AMQ_MESH_SERVICE_NAMESPACE",
+                                        "valueFrom": {
+                                            "fieldRef": {
+                                                "fieldPath": "metadata.namespace"
+                                            }
+                                        }
                                     },
                                     },
                                     {
                                     {
-                                        "name": "AMQ_ADMIN_PASSWORD",
-                                        "value": "${AMQ_ADMIN_PASSWORD}"
+                                        "name": "AMQ_STORAGE_USAGE_LIMIT",
+                                        "value": "${AMQ_STORAGE_USAGE_LIMIT}"
                                     }
                                     }
                                 ]
                                 ]
                             }
                             }

+ 27 - 6
roles/openshift_examples/files/examples/v1.3/xpaas-templates/eap70-basic-s2i.json

@@ -6,13 +6,13 @@
             "iconClass": "icon-jboss",
             "iconClass": "icon-jboss",
             "description": "Application template for EAP 7 applications built using S2I.",
             "description": "Application template for EAP 7 applications built using S2I.",
             "tags": "eap,javaee,java,jboss,xpaas",
             "tags": "eap,javaee,java,jboss,xpaas",
-            "version": "1.3.1"
+            "version": "1.3.2"
         },
         },
         "name": "eap70-basic-s2i"
         "name": "eap70-basic-s2i"
     },
     },
     "labels": {
     "labels": {
         "template": "eap70-basic-s2i",
         "template": "eap70-basic-s2i",
-        "xpaas": "1.3.1"
+        "xpaas": "1.3.2"
     },
     },
     "parameters": [
     "parameters": [
         {
         {
@@ -90,6 +90,12 @@
             "from": "[a-zA-Z0-9]{8}",
             "from": "[a-zA-Z0-9]{8}",
             "generate": "expression",
             "generate": "expression",
             "required": true
             "required": true
+        },
+        {
+            "description": "Controls whether exploded deployment content should be automatically deployed",
+            "name": "AUTO_DEPLOY_EXPLODED",
+            "value": "false",
+            "required": false
         }
         }
     ],
     ],
     "objects": [
     "objects": [
@@ -172,7 +178,7 @@
                         "from": {
                         "from": {
                             "kind": "ImageStreamTag",
                             "kind": "ImageStreamTag",
                             "namespace": "${IMAGE_STREAM_NAMESPACE}",
                             "namespace": "${IMAGE_STREAM_NAMESPACE}",
-                            "name": "jboss-eap70-openshift:1.3"
+                            "name": "jboss-eap70-openshift:1.4"
                         }
                         }
                     }
                     }
                 },
                 },
@@ -227,8 +233,8 @@
                                 "${APPLICATION_NAME}"
                                 "${APPLICATION_NAME}"
                             ],
                             ],
                             "from": {
                             "from": {
-                                "kind": "ImageStream",
-                                "name": "${APPLICATION_NAME}"
+                                "kind": "ImageStreamTag",
+                                "name": "${APPLICATION_NAME}:latest"
                             }
                             }
                         }
                         }
                     },
                     },
@@ -249,12 +255,23 @@
                         }
                         }
                     },
                     },
                     "spec": {
                     "spec": {
-                        "terminationGracePeriodSeconds": 60,
+                        "terminationGracePeriodSeconds": 75,
                         "containers": [
                         "containers": [
                             {
                             {
                                 "name": "${APPLICATION_NAME}",
                                 "name": "${APPLICATION_NAME}",
                                 "image": "${APPLICATION_NAME}",
                                 "image": "${APPLICATION_NAME}",
                                 "imagePullPolicy": "Always",
                                 "imagePullPolicy": "Always",
+                                "lifecycle": {
+                                    "preStop": {
+                                        "exec": {
+                                            "command": [
+                                                "/opt/eap/bin/jboss-cli.sh",
+                                                "-c",
+                                                ":shutdown(timeout=60)"
+                                            ]
+                                        }
+                                    }
+                                },
                                 "livenessProbe": {
                                 "livenessProbe": {
                                     "exec": {
                                     "exec": {
                                         "command": [
                                         "command": [
@@ -318,6 +335,10 @@
                                     {
                                     {
                                         "name": "JGROUPS_CLUSTER_PASSWORD",
                                         "name": "JGROUPS_CLUSTER_PASSWORD",
                                         "value": "${JGROUPS_CLUSTER_PASSWORD}"
                                         "value": "${JGROUPS_CLUSTER_PASSWORD}"
+                                    },
+                                    {
+                                        "name": "AUTO_DEPLOY_EXPLODED",
+                                        "value": "${AUTO_DEPLOY_EXPLODED}"
                                     }
                                     }
                                 ]
                                 ]
                             }
                             }

+ 44 - 7
roles/openshift_examples/files/examples/v1.3/xpaas-templates/eap70-https-s2i.json

@@ -6,13 +6,13 @@
             "iconClass": "icon-jboss",
             "iconClass": "icon-jboss",
             "description": "Application template for EAP 7 applications built using S2I.",
             "description": "Application template for EAP 7 applications built using S2I.",
             "tags": "eap,javaee,java,jboss,xpaas",
             "tags": "eap,javaee,java,jboss,xpaas",
-            "version": "1.3.1"
+            "version": "1.3.2"
         },
         },
         "name": "eap70-https-s2i"
         "name": "eap70-https-s2i"
     },
     },
     "labels": {
     "labels": {
         "template": "eap70-https-s2i",
         "template": "eap70-https-s2i",
-        "xpaas": "1.3.1"
+        "xpaas": "1.3.2"
     },
     },
     "parameters": [
     "parameters": [
         {
         {
@@ -64,6 +64,12 @@
             "required": false
             "required": false
         },
         },
         {
         {
+            "description": "The name of the service account to use for the deployment.  The service account should be configured to allow useage of the secret(s) specified by HTTPS_SECRET and JGROUPS_ENCRYPT_SECRET.",
+            "name": "SERVICE_ACCOUNT_NAME",
+            "value": "eap7-service-account",
+            "required": true
+        },
+        {
             "description": "The name of the secret containing the keystore file",
             "description": "The name of the secret containing the keystore file",
             "name": "HTTPS_SECRET",
             "name": "HTTPS_SECRET",
             "value": "eap7-app-secret",
             "value": "eap7-app-secret",
@@ -76,6 +82,12 @@
             "required": false
             "required": false
         },
         },
         {
         {
+            "description": "The type of the keystore file (JKS or JCEKS)",
+            "name": "HTTPS_KEYSTORE_TYPE",
+            "value": "",
+            "required": false
+        },
+        {
             "description": "The name associated with the server certificate",
             "description": "The name associated with the server certificate",
             "name": "HTTPS_NAME",
             "name": "HTTPS_NAME",
             "value": "",
             "value": "",
@@ -144,6 +156,12 @@
             "from": "[a-zA-Z0-9]{8}",
             "from": "[a-zA-Z0-9]{8}",
             "generate": "expression",
             "generate": "expression",
             "required": true
             "required": true
+        },
+        {
+            "description": "Controls whether exploded deployment content should be automatically deployed",
+            "name": "AUTO_DEPLOY_EXPLODED",
+            "value": "false",
+            "required": false
         }
         }
     ],
     ],
     "objects": [
     "objects": [
@@ -273,7 +291,7 @@
                         "from": {
                         "from": {
                             "kind": "ImageStreamTag",
                             "kind": "ImageStreamTag",
                             "namespace": "${IMAGE_STREAM_NAMESPACE}",
                             "namespace": "${IMAGE_STREAM_NAMESPACE}",
-                            "name": "jboss-eap70-openshift:1.3"
+                            "name": "jboss-eap70-openshift:1.4"
                         }
                         }
                     }
                     }
                 },
                 },
@@ -328,8 +346,8 @@
                                 "${APPLICATION_NAME}"
                                 "${APPLICATION_NAME}"
                             ],
                             ],
                             "from": {
                             "from": {
-                                "kind": "ImageStream",
-                                "name": "${APPLICATION_NAME}"
+                                "kind": "ImageStreamTag",
+                                "name": "${APPLICATION_NAME}:latest"
                             }
                             }
                         }
                         }
                     },
                     },
@@ -350,8 +368,8 @@
                         }
                         }
                     },
                     },
                     "spec": {
                     "spec": {
-                        "serviceAccountName": "eap7-service-account",
-                        "terminationGracePeriodSeconds": 60,
+                        "serviceAccountName": "${SERVICE_ACCOUNT_NAME}",
+                        "terminationGracePeriodSeconds": 75,
                         "containers": [
                         "containers": [
                             {
                             {
                                 "name": "${APPLICATION_NAME}",
                                 "name": "${APPLICATION_NAME}",
@@ -369,6 +387,17 @@
                                         "readOnly": true
                                         "readOnly": true
                                     }
                                     }
                                 ],
                                 ],
+                                "lifecycle": {
+                                    "preStop": {
+                                        "exec": {
+                                            "command": [
+                                                "/opt/eap/bin/jboss-cli.sh",
+                                                "-c",
+                                                ":shutdown(timeout=60)"
+                                            ]
+                                        }
+                                    }
+                                },
                                 "livenessProbe": {
                                 "livenessProbe": {
                                     "exec": {
                                     "exec": {
                                         "command": [
                                         "command": [
@@ -431,6 +460,10 @@
                                         "value": "${HTTPS_KEYSTORE}"
                                         "value": "${HTTPS_KEYSTORE}"
                                     },
                                     },
                                     {
                                     {
+                                        "name": "HTTPS_KEYSTORE_TYPE",
+                                        "value": "${HTTPS_KEYSTORE_TYPE}"
+                                    },
+                                    {
                                         "name": "HTTPS_NAME",
                                         "name": "HTTPS_NAME",
                                         "value": "${HTTPS_NAME}"
                                         "value": "${HTTPS_NAME}"
                                     },
                                     },
@@ -473,6 +506,10 @@
                                     {
                                     {
                                         "name": "JGROUPS_CLUSTER_PASSWORD",
                                         "name": "JGROUPS_CLUSTER_PASSWORD",
                                         "value": "${JGROUPS_CLUSTER_PASSWORD}"
                                         "value": "${JGROUPS_CLUSTER_PASSWORD}"
+                                    },
+                                    {
+                                        "name": "AUTO_DEPLOY_EXPLODED",
+                                        "value": "${AUTO_DEPLOY_EXPLODED}"
                                     }
                                     }
                                 ]
                                 ]
                             }
                             }

+ 44 - 7
roles/openshift_examples/files/examples/v1.3/xpaas-templates/eap70-mongodb-persistent-s2i.json

@@ -6,13 +6,13 @@
             "description": "Application template for EAP 7 MongoDB applications with persistent storage built using S2I.",
             "description": "Application template for EAP 7 MongoDB applications with persistent storage built using S2I.",
             "iconClass": "icon-jboss",
             "iconClass": "icon-jboss",
             "tags": "eap,mongodb,javaee,java,database,jboss,xpaas",
             "tags": "eap,mongodb,javaee,java,database,jboss,xpaas",
-            "version": "1.3.1"
+            "version": "1.3.2"
         },
         },
         "name": "eap70-mongodb-persistent-s2i"
         "name": "eap70-mongodb-persistent-s2i"
     },
     },
     "labels": {
     "labels": {
         "template": "eap70-mongodb-persistent-s2i",
         "template": "eap70-mongodb-persistent-s2i",
-        "xpaas": "1.3.1"
+        "xpaas": "1.3.2"
     },
     },
     "parameters": [
     "parameters": [
         {
         {
@@ -82,6 +82,12 @@
             "required": false
             "required": false
         },
         },
         {
         {
+            "description": "The name of the service account to use for the deployment.  The service account should be configured to allow useage of the secret(s) specified by HTTPS_SECRET and JGROUPS_ENCRYPT_SECRET.",
+            "name": "SERVICE_ACCOUNT_NAME",
+            "value": "eap7-service-account",
+            "required": true
+        },
+        {
             "description": "The name of the secret containing the keystore file",
             "description": "The name of the secret containing the keystore file",
             "name": "HTTPS_SECRET",
             "name": "HTTPS_SECRET",
             "value": "eap7-app-secret",
             "value": "eap7-app-secret",
@@ -94,6 +100,12 @@
             "required": false
             "required": false
         },
         },
         {
         {
+            "description": "The type of the keystore file (JKS or JCEKS)",
+            "name": "HTTPS_KEYSTORE_TYPE",
+            "value": "",
+            "required": false
+        },
+        {
             "description": "The name associated with the server certificate",
             "description": "The name associated with the server certificate",
             "name": "HTTPS_NAME",
             "name": "HTTPS_NAME",
             "value": "",
             "value": "",
@@ -213,6 +225,12 @@
             "from": "[a-zA-Z0-9]{8}",
             "from": "[a-zA-Z0-9]{8}",
             "generate": "expression",
             "generate": "expression",
             "required": true
             "required": true
+        },
+        {
+            "description": "Controls whether exploded deployment content should be automatically deployed",
+            "name": "AUTO_DEPLOY_EXPLODED",
+            "value": "false",
+            "required": false
         }
         }
     ],
     ],
     "objects": [
     "objects": [
@@ -366,7 +384,7 @@
                         "from": {
                         "from": {
                             "kind": "ImageStreamTag",
                             "kind": "ImageStreamTag",
                             "namespace": "${IMAGE_STREAM_NAMESPACE}",
                             "namespace": "${IMAGE_STREAM_NAMESPACE}",
-                            "name": "jboss-eap70-openshift:1.3"
+                            "name": "jboss-eap70-openshift:1.4"
                         }
                         }
                     }
                     }
                 },
                 },
@@ -421,8 +439,8 @@
                                 "${APPLICATION_NAME}"
                                 "${APPLICATION_NAME}"
                             ],
                             ],
                             "from": {
                             "from": {
-                                "kind": "ImageStream",
-                                "name": "${APPLICATION_NAME}"
+                                "kind": "ImageStreamTag",
+                                "name": "${APPLICATION_NAME}:latest"
                             }
                             }
                         }
                         }
                     },
                     },
@@ -443,8 +461,8 @@
                         }
                         }
                     },
                     },
                     "spec": {
                     "spec": {
-                        "serviceAccountName": "eap7-service-account",
-                        "terminationGracePeriodSeconds": 60,
+                        "serviceAccountName": "${SERVICE_ACCOUNT_NAME}",
+                        "terminationGracePeriodSeconds": 75,
                         "containers": [
                         "containers": [
                             {
                             {
                                 "name": "${APPLICATION_NAME}",
                                 "name": "${APPLICATION_NAME}",
@@ -462,6 +480,17 @@
                                         "readOnly": true
                                         "readOnly": true
                                     }
                                     }
                                 ],
                                 ],
+                                "lifecycle": {
+                                    "preStop": {
+                                        "exec": {
+                                            "command": [
+                                                "/opt/eap/bin/jboss-cli.sh",
+                                                "-c",
+                                                ":shutdown(timeout=60)"
+                                            ]
+                                        }
+                                    }
+                                },
                                 "livenessProbe": {
                                 "livenessProbe": {
                                     "exec": {
                                     "exec": {
                                         "command": [
                                         "command": [
@@ -560,6 +589,10 @@
                                         "value": "${HTTPS_KEYSTORE}"
                                         "value": "${HTTPS_KEYSTORE}"
                                     },
                                     },
                                     {
                                     {
+                                        "name": "HTTPS_KEYSTORE_TYPE",
+                                        "value": "${HTTPS_KEYSTORE_TYPE}"
+                                    },
+                                    {
                                         "name": "HTTPS_NAME",
                                         "name": "HTTPS_NAME",
                                         "value": "${HTTPS_NAME}"
                                         "value": "${HTTPS_NAME}"
                                     },
                                     },
@@ -602,6 +635,10 @@
                                     {
                                     {
                                         "name": "JGROUPS_CLUSTER_PASSWORD",
                                         "name": "JGROUPS_CLUSTER_PASSWORD",
                                         "value": "${JGROUPS_CLUSTER_PASSWORD}"
                                         "value": "${JGROUPS_CLUSTER_PASSWORD}"
+                                    },
+                                    {
+                                        "name": "AUTO_DEPLOY_EXPLODED",
+                                        "value": "${AUTO_DEPLOY_EXPLODED}"
                                     }
                                     }
                                 ]
                                 ]
                             }
                             }

+ 44 - 7
roles/openshift_examples/files/examples/v1.3/xpaas-templates/eap70-mongodb-s2i.json

@@ -6,13 +6,13 @@
             "description": "Application template for EAP 7 MongoDB applications built using S2I.",
             "description": "Application template for EAP 7 MongoDB applications built using S2I.",
             "iconClass": "icon-jboss",
             "iconClass": "icon-jboss",
             "tags": "eap,mongodb,javaee,java,database,jboss,xpaas",
             "tags": "eap,mongodb,javaee,java,database,jboss,xpaas",
-            "version": "1.3.1"
+            "version": "1.3.2"
         },
         },
         "name": "eap70-mongodb-s2i"
         "name": "eap70-mongodb-s2i"
     },
     },
     "labels": {
     "labels": {
         "template": "eap70-mongodb-s2i",
         "template": "eap70-mongodb-s2i",
-        "xpaas": "1.3.1"
+        "xpaas": "1.3.2"
     },
     },
     "parameters": [
     "parameters": [
         {
         {
@@ -76,6 +76,12 @@
             "required": false
             "required": false
         },
         },
         {
         {
+            "description": "The name of the service account to use for the deployment.  The service account should be configured to allow useage of the secret(s) specified by HTTPS_SECRET and JGROUPS_ENCRYPT_SECRET.",
+            "name": "SERVICE_ACCOUNT_NAME",
+            "value": "eap7-service-account",
+            "required": true
+        },
+        {
             "description": "The name of the secret containing the keystore file",
             "description": "The name of the secret containing the keystore file",
             "name": "HTTPS_SECRET",
             "name": "HTTPS_SECRET",
             "value": "eap7-app-secret",
             "value": "eap7-app-secret",
@@ -88,6 +94,12 @@
             "required": false
             "required": false
         },
         },
         {
         {
+            "description": "The type of the keystore file (JKS or JCEKS)",
+            "name": "HTTPS_KEYSTORE_TYPE",
+            "value": "",
+            "required": false
+        },
+        {
             "description": "The name associated with the server certificate",
             "description": "The name associated with the server certificate",
             "name": "HTTPS_NAME",
             "name": "HTTPS_NAME",
             "value": "",
             "value": "",
@@ -207,6 +219,12 @@
             "from": "[a-zA-Z0-9]{8}",
             "from": "[a-zA-Z0-9]{8}",
             "generate": "expression",
             "generate": "expression",
             "required": true
             "required": true
+        },
+        {
+            "description": "Controls whether exploded deployment content should be automatically deployed",
+            "name": "AUTO_DEPLOY_EXPLODED",
+            "value": "false",
+            "required": false
         }
         }
     ],
     ],
     "objects": [
     "objects": [
@@ -360,7 +378,7 @@
                         "from": {
                         "from": {
                             "kind": "ImageStreamTag",
                             "kind": "ImageStreamTag",
                             "namespace": "${IMAGE_STREAM_NAMESPACE}",
                             "namespace": "${IMAGE_STREAM_NAMESPACE}",
-                            "name": "jboss-eap70-openshift:1.3"
+                            "name": "jboss-eap70-openshift:1.4"
                         }
                         }
                     }
                     }
                 },
                 },
@@ -415,8 +433,8 @@
                                 "${APPLICATION_NAME}"
                                 "${APPLICATION_NAME}"
                             ],
                             ],
                             "from": {
                             "from": {
-                                "kind": "ImageStream",
-                                "name": "${APPLICATION_NAME}"
+                                "kind": "ImageStreamTag",
+                                "name": "${APPLICATION_NAME}:latest"
                             }
                             }
                         }
                         }
                     },
                     },
@@ -437,8 +455,8 @@
                         }
                         }
                     },
                     },
                     "spec": {
                     "spec": {
-                        "serviceAccountName": "eap7-service-account",
-                        "terminationGracePeriodSeconds": 60,
+                        "serviceAccountName": "${SERVICE_ACCOUNT_NAME}",
+                        "terminationGracePeriodSeconds": 75,
                         "containers": [
                         "containers": [
                             {
                             {
                                 "name": "${APPLICATION_NAME}",
                                 "name": "${APPLICATION_NAME}",
@@ -456,6 +474,17 @@
                                         "readOnly": true
                                         "readOnly": true
                                     }
                                     }
                                 ],
                                 ],
+                                "lifecycle": {
+                                    "preStop": {
+                                        "exec": {
+                                            "command": [
+                                                "/opt/eap/bin/jboss-cli.sh",
+                                                "-c",
+                                                ":shutdown(timeout=60)"
+                                            ]
+                                        }
+                                    }
+                                },
                                 "livenessProbe": {
                                 "livenessProbe": {
                                     "exec": {
                                     "exec": {
                                         "command": [
                                         "command": [
@@ -554,6 +583,10 @@
                                         "value": "${HTTPS_KEYSTORE}"
                                         "value": "${HTTPS_KEYSTORE}"
                                     },
                                     },
                                     {
                                     {
+                                        "name": "HTTPS_KEYSTORE_TYPE",
+                                        "value": "${HTTPS_KEYSTORE_TYPE}"
+                                    },
+                                    {
                                         "name": "HTTPS_NAME",
                                         "name": "HTTPS_NAME",
                                         "value": "${HTTPS_NAME}"
                                         "value": "${HTTPS_NAME}"
                                     },
                                     },
@@ -596,6 +629,10 @@
                                     {
                                     {
                                         "name": "JGROUPS_CLUSTER_PASSWORD",
                                         "name": "JGROUPS_CLUSTER_PASSWORD",
                                         "value": "${JGROUPS_CLUSTER_PASSWORD}"
                                         "value": "${JGROUPS_CLUSTER_PASSWORD}"
+                                    },
+                                    {
+                                        "name": "AUTO_DEPLOY_EXPLODED",
+                                        "value": "${AUTO_DEPLOY_EXPLODED}"
                                     }
                                     }
                                 ]
                                 ]
                             }
                             }

+ 44 - 7
roles/openshift_examples/files/examples/v1.3/xpaas-templates/eap70-mysql-persistent-s2i.json

@@ -6,13 +6,13 @@
             "description": "Application template for EAP 7 MySQL applications with persistent storage built using S2I.",
             "description": "Application template for EAP 7 MySQL applications with persistent storage built using S2I.",
             "iconClass": "icon-jboss",
             "iconClass": "icon-jboss",
             "tags": "eap,mysql,javaee,java,database,jboss,xpaas",
             "tags": "eap,mysql,javaee,java,database,jboss,xpaas",
-            "version": "1.3.1"
+            "version": "1.3.2"
         },
         },
         "name": "eap70-mysql-persistent-s2i"
         "name": "eap70-mysql-persistent-s2i"
     },
     },
     "labels": {
     "labels": {
         "template": "eap70-mysql-persistent-s2i",
         "template": "eap70-mysql-persistent-s2i",
-        "xpaas": "1.3.1"
+        "xpaas": "1.3.2"
     },
     },
     "parameters": [
     "parameters": [
         {
         {
@@ -82,6 +82,12 @@
             "required": false
             "required": false
         },
         },
         {
         {
+            "description": "The name of the service account to use for the deployment.  The service account should be configured to allow useage of the secret(s) specified by HTTPS_SECRET and JGROUPS_ENCRYPT_SECRET.",
+            "name": "SERVICE_ACCOUNT_NAME",
+            "value": "eap7-service-account",
+            "required": true
+        },
+        {
             "description": "The name of the secret containing the keystore file",
             "description": "The name of the secret containing the keystore file",
             "name": "HTTPS_SECRET",
             "name": "HTTPS_SECRET",
             "value": "eap7-app-secret",
             "value": "eap7-app-secret",
@@ -94,6 +100,12 @@
             "required": false
             "required": false
         },
         },
         {
         {
+            "description": "The type of the keystore file (JKS or JCEKS)",
+            "name": "HTTPS_KEYSTORE_TYPE",
+            "value": "",
+            "required": false
+        },
+        {
             "description": "The name associated with the server certificate",
             "description": "The name associated with the server certificate",
             "name": "HTTPS_NAME",
             "name": "HTTPS_NAME",
             "value": "",
             "value": "",
@@ -216,6 +228,12 @@
             "from": "[a-zA-Z0-9]{8}",
             "from": "[a-zA-Z0-9]{8}",
             "generate": "expression",
             "generate": "expression",
             "required": true
             "required": true
+        },
+        {
+            "description": "Controls whether exploded deployment content should be automatically deployed",
+            "name": "AUTO_DEPLOY_EXPLODED",
+            "value": "false",
+            "required": false
         }
         }
     ],
     ],
     "objects": [
     "objects": [
@@ -369,7 +387,7 @@
                         "from": {
                         "from": {
                             "kind": "ImageStreamTag",
                             "kind": "ImageStreamTag",
                             "namespace": "${IMAGE_STREAM_NAMESPACE}",
                             "namespace": "${IMAGE_STREAM_NAMESPACE}",
-                            "name": "jboss-eap70-openshift:1.3"
+                            "name": "jboss-eap70-openshift:1.4"
                         }
                         }
                     }
                     }
                 },
                 },
@@ -424,8 +442,8 @@
                                 "${APPLICATION_NAME}"
                                 "${APPLICATION_NAME}"
                             ],
                             ],
                             "from": {
                             "from": {
-                                "kind": "ImageStream",
-                                "name": "${APPLICATION_NAME}"
+                                "kind": "ImageStreamTag",
+                                "name": "${APPLICATION_NAME}:latest"
                             }
                             }
                         }
                         }
                     },
                     },
@@ -446,8 +464,8 @@
                         }
                         }
                     },
                     },
                     "spec": {
                     "spec": {
-                        "serviceAccountName": "eap7-service-account",
-                        "terminationGracePeriodSeconds": 60,
+                        "serviceAccountName": "${SERVICE_ACCOUNT_NAME}",
+                        "terminationGracePeriodSeconds": 75,
                         "containers": [
                         "containers": [
                             {
                             {
                                 "name": "${APPLICATION_NAME}",
                                 "name": "${APPLICATION_NAME}",
@@ -465,6 +483,17 @@
                                         "readOnly": true
                                         "readOnly": true
                                     }
                                     }
                                 ],
                                 ],
+                                "lifecycle": {
+                                    "preStop": {
+                                        "exec": {
+                                            "command": [
+                                                "/opt/eap/bin/jboss-cli.sh",
+                                                "-c",
+                                                ":shutdown(timeout=60)"
+                                            ]
+                                        }
+                                    }
+                                },
                                 "livenessProbe": {
                                 "livenessProbe": {
                                     "exec": {
                                     "exec": {
                                         "command": [
                                         "command": [
@@ -563,6 +592,10 @@
                                         "value": "${HTTPS_KEYSTORE}"
                                         "value": "${HTTPS_KEYSTORE}"
                                     },
                                     },
                                     {
                                     {
+                                        "name": "HTTPS_KEYSTORE_TYPE",
+                                        "value": "${HTTPS_KEYSTORE_TYPE}"
+                                    },
+                                    {
                                         "name": "HTTPS_NAME",
                                         "name": "HTTPS_NAME",
                                         "value": "${HTTPS_NAME}"
                                         "value": "${HTTPS_NAME}"
                                     },
                                     },
@@ -607,6 +640,10 @@
                                         "value": "${JGROUPS_CLUSTER_PASSWORD}"
                                         "value": "${JGROUPS_CLUSTER_PASSWORD}"
                                     },
                                     },
                                     {
                                     {
+                                        "name": "AUTO_DEPLOY_EXPLODED",
+                                        "value": "${AUTO_DEPLOY_EXPLODED}"
+                                    },
+                                    {
                                         "name": "DEFAULT_JOB_REPOSITORY",
                                         "name": "DEFAULT_JOB_REPOSITORY",
                                         "value": "${APPLICATION_NAME}-mysql"
                                         "value": "${APPLICATION_NAME}-mysql"
                                     },
                                     },

+ 44 - 7
roles/openshift_examples/files/examples/v1.3/xpaas-templates/eap70-mysql-s2i.json

@@ -6,13 +6,13 @@
             "description": "Application template for EAP 7 MySQL applications built using S2I.",
             "description": "Application template for EAP 7 MySQL applications built using S2I.",
             "iconClass": "icon-jboss",
             "iconClass": "icon-jboss",
             "tags": "eap,mysql,javaee,java,database,jboss,xpaas",
             "tags": "eap,mysql,javaee,java,database,jboss,xpaas",
-            "version": "1.3.1"
+            "version": "1.3.2"
         },
         },
         "name": "eap70-mysql-s2i"
         "name": "eap70-mysql-s2i"
     },
     },
     "labels": {
     "labels": {
         "template": "eap70-mysql-s2i",
         "template": "eap70-mysql-s2i",
-        "xpaas": "1.3.1"
+        "xpaas": "1.3.2"
     },
     },
     "parameters": [
     "parameters": [
         {
         {
@@ -76,6 +76,12 @@
             "required": false
             "required": false
         },
         },
         {
         {
+            "description": "The name of the service account to use for the deployment.  The service account should be configured to allow useage of the secret(s) specified by HTTPS_SECRET and JGROUPS_ENCRYPT_SECRET.",
+            "name": "SERVICE_ACCOUNT_NAME",
+            "value": "eap7-service-account",
+            "required": true
+        },
+        {
             "description": "The name of the secret containing the keystore file",
             "description": "The name of the secret containing the keystore file",
             "name": "HTTPS_SECRET",
             "name": "HTTPS_SECRET",
             "value": "eap7-app-secret",
             "value": "eap7-app-secret",
@@ -88,6 +94,12 @@
             "required": false
             "required": false
         },
         },
         {
         {
+            "description": "The type of the keystore file (JKS or JCEKS)",
+            "name": "HTTPS_KEYSTORE_TYPE",
+            "value": "",
+            "required": false
+        },
+        {
             "description": "The name associated with the server certificate",
             "description": "The name associated with the server certificate",
             "name": "HTTPS_NAME",
             "name": "HTTPS_NAME",
             "value": "",
             "value": "",
@@ -210,6 +222,12 @@
             "from": "[a-zA-Z0-9]{8}",
             "from": "[a-zA-Z0-9]{8}",
             "generate": "expression",
             "generate": "expression",
             "required": true
             "required": true
+        },
+        {
+            "description": "Controls whether exploded deployment content should be automatically deployed",
+            "name": "AUTO_DEPLOY_EXPLODED",
+            "value": "false",
+            "required": false
         }
         }
     ],
     ],
     "objects": [
     "objects": [
@@ -363,7 +381,7 @@
                         "from": {
                         "from": {
                             "kind": "ImageStreamTag",
                             "kind": "ImageStreamTag",
                             "namespace": "${IMAGE_STREAM_NAMESPACE}",
                             "namespace": "${IMAGE_STREAM_NAMESPACE}",
-                            "name": "jboss-eap70-openshift:1.3"
+                            "name": "jboss-eap70-openshift:1.4"
                         }
                         }
                     }
                     }
                 },
                 },
@@ -418,8 +436,8 @@
                                 "${APPLICATION_NAME}"
                                 "${APPLICATION_NAME}"
                             ],
                             ],
                             "from": {
                             "from": {
-                                "kind": "ImageStream",
-                                "name": "${APPLICATION_NAME}"
+                                "kind": "ImageStreamTag",
+                                "name": "${APPLICATION_NAME}:latest"
                             }
                             }
                         }
                         }
                     },
                     },
@@ -440,8 +458,8 @@
                         }
                         }
                     },
                     },
                     "spec": {
                     "spec": {
-                        "serviceAccountName": "eap7-service-account",
-                        "terminationGracePeriodSeconds": 60,
+                        "serviceAccountName": "${SERVICE_ACCOUNT_NAME}",
+                        "terminationGracePeriodSeconds": 75,
                         "containers": [
                         "containers": [
                             {
                             {
                                 "name": "${APPLICATION_NAME}",
                                 "name": "${APPLICATION_NAME}",
@@ -459,6 +477,17 @@
                                         "readOnly": true
                                         "readOnly": true
                                     }
                                     }
                                 ],
                                 ],
+                                "lifecycle": {
+                                    "preStop": {
+                                        "exec": {
+                                            "command": [
+                                                "/opt/eap/bin/jboss-cli.sh",
+                                                "-c",
+                                                ":shutdown(timeout=60)"
+                                            ]
+                                        }
+                                    }
+                                },
                                 "livenessProbe": {
                                 "livenessProbe": {
                                     "exec": {
                                     "exec": {
                                         "command": [
                                         "command": [
@@ -557,6 +586,10 @@
                                         "value": "${HTTPS_KEYSTORE}"
                                         "value": "${HTTPS_KEYSTORE}"
                                     },
                                     },
                                     {
                                     {
+                                        "name": "HTTPS_KEYSTORE_TYPE",
+                                        "value": "${HTTPS_KEYSTORE_TYPE}"
+                                    },
+                                    {
                                         "name": "HTTPS_NAME",
                                         "name": "HTTPS_NAME",
                                         "value": "${HTTPS_NAME}"
                                         "value": "${HTTPS_NAME}"
                                     },
                                     },
@@ -601,6 +634,10 @@
                                         "value": "${JGROUPS_CLUSTER_PASSWORD}"
                                         "value": "${JGROUPS_CLUSTER_PASSWORD}"
                                     },
                                     },
                                     {
                                     {
+                                        "name": "AUTO_DEPLOY_EXPLODED",
+                                        "value": "${AUTO_DEPLOY_EXPLODED}"
+                                    },
+                                    {
                                         "name": "DEFAULT_JOB_REPOSITORY",
                                         "name": "DEFAULT_JOB_REPOSITORY",
                                         "value": "${APPLICATION_NAME}-mysql"
                                         "value": "${APPLICATION_NAME}-mysql"
                                     },
                                     },

+ 48 - 7
roles/openshift_examples/files/examples/v1.3/xpaas-templates/eap70-postgresql-persistent-s2i.json

@@ -6,13 +6,13 @@
             "description": "Application template for EAP 7 PostgreSQL applications with persistent storage built using S2I.",
             "description": "Application template for EAP 7 PostgreSQL applications with persistent storage built using S2I.",
             "iconClass": "icon-jboss",
             "iconClass": "icon-jboss",
             "tags": "eap,postgresql,javaee,java,database,jboss,xpaas",
             "tags": "eap,postgresql,javaee,java,database,jboss,xpaas",
-            "version": "1.3.1"
+            "version": "1.3.2"
         },
         },
         "name": "eap70-postgresql-persistent-s2i"
         "name": "eap70-postgresql-persistent-s2i"
     },
     },
     "labels": {
     "labels": {
         "template": "eap70-postgresql-persistent-s2i",
         "template": "eap70-postgresql-persistent-s2i",
-        "xpaas": "1.3.1"
+        "xpaas": "1.3.2"
     },
     },
     "parameters": [
     "parameters": [
         {
         {
@@ -82,6 +82,12 @@
             "required": false
             "required": false
         },
         },
         {
         {
+            "description": "The name of the service account to use for the deployment.  The service account should be configured to allow useage of the secret(s) specified by HTTPS_SECRET and JGROUPS_ENCRYPT_SECRET.",
+            "name": "SERVICE_ACCOUNT_NAME",
+            "value": "eap7-service-account",
+            "required": true
+        },
+        {
             "description": "The name of the secret containing the keystore file",
             "description": "The name of the secret containing the keystore file",
             "name": "HTTPS_SECRET",
             "name": "HTTPS_SECRET",
             "value": "eap7-app-secret",
             "value": "eap7-app-secret",
@@ -94,6 +100,12 @@
             "required": false
             "required": false
         },
         },
         {
         {
+            "description": "The type of the keystore file (JKS or JCEKS)",
+            "name": "HTTPS_KEYSTORE_TYPE",
+            "value": "",
+            "required": false
+        },
+        {
             "description": "The name associated with the server certificate",
             "description": "The name associated with the server certificate",
             "name": "HTTPS_NAME",
             "name": "HTTPS_NAME",
             "value": "",
             "value": "",
@@ -201,6 +213,12 @@
             "from": "[a-zA-Z0-9]{8}",
             "from": "[a-zA-Z0-9]{8}",
             "generate": "expression",
             "generate": "expression",
             "required": true
             "required": true
+        },
+        {
+            "description": "Controls whether exploded deployment content should be automatically deployed",
+            "name": "AUTO_DEPLOY_EXPLODED",
+            "value": "false",
+            "required": false
         }
         }
     ],
     ],
     "objects": [
     "objects": [
@@ -354,7 +372,7 @@
                         "from": {
                         "from": {
                             "kind": "ImageStreamTag",
                             "kind": "ImageStreamTag",
                             "namespace": "${IMAGE_STREAM_NAMESPACE}",
                             "namespace": "${IMAGE_STREAM_NAMESPACE}",
-                            "name": "jboss-eap70-openshift:1.3"
+                            "name": "jboss-eap70-openshift:1.4"
                         }
                         }
                     }
                     }
                 },
                 },
@@ -409,8 +427,8 @@
                                 "${APPLICATION_NAME}"
                                 "${APPLICATION_NAME}"
                             ],
                             ],
                             "from": {
                             "from": {
-                                "kind": "ImageStream",
-                                "name": "${APPLICATION_NAME}"
+                                "kind": "ImageStreamTag",
+                                "name": "${APPLICATION_NAME}:latest"
                             }
                             }
                         }
                         }
                     },
                     },
@@ -431,8 +449,8 @@
                         }
                         }
                     },
                     },
                     "spec": {
                     "spec": {
-                        "serviceAccountName": "eap7-service-account",
-                        "terminationGracePeriodSeconds": 60,
+                        "serviceAccountName": "${SERVICE_ACCOUNT_NAME}",
+                        "terminationGracePeriodSeconds": 75,
                         "containers": [
                         "containers": [
                             {
                             {
                                 "name": "${APPLICATION_NAME}",
                                 "name": "${APPLICATION_NAME}",
@@ -450,6 +468,17 @@
                                         "readOnly": true
                                         "readOnly": true
                                     }
                                     }
                                 ],
                                 ],
+                                "lifecycle": {
+                                    "preStop": {
+                                        "exec": {
+                                            "command": [
+                                                "/opt/eap/bin/jboss-cli.sh",
+                                                "-c",
+                                                ":shutdown(timeout=60)"
+                                            ]
+                                        }
+                                    }
+                                },
                                 "livenessProbe": {
                                 "livenessProbe": {
                                     "exec": {
                                     "exec": {
                                         "command": [
                                         "command": [
@@ -548,6 +577,10 @@
                                         "value": "${HTTPS_KEYSTORE}"
                                         "value": "${HTTPS_KEYSTORE}"
                                     },
                                     },
                                     {
                                     {
+                                        "name": "HTTPS_KEYSTORE_TYPE",
+                                        "value": "${HTTPS_KEYSTORE_TYPE}"
+                                    },
+                                    {
                                         "name": "HTTPS_NAME",
                                         "name": "HTTPS_NAME",
                                         "value": "${HTTPS_NAME}"
                                         "value": "${HTTPS_NAME}"
                                     },
                                     },
@@ -592,6 +625,10 @@
                                         "value": "${JGROUPS_CLUSTER_PASSWORD}"
                                         "value": "${JGROUPS_CLUSTER_PASSWORD}"
                                     },
                                     },
                                     {
                                     {
+                                        "name": "AUTO_DEPLOY_EXPLODED",
+                                        "value": "${AUTO_DEPLOY_EXPLODED}"
+                                    },
+                                    {
                                         "name": "DEFAULT_JOB_REPOSITORY",
                                         "name": "DEFAULT_JOB_REPOSITORY",
                                         "value": "${APPLICATION_NAME}-postgresql"
                                         "value": "${APPLICATION_NAME}-postgresql"
                                     },
                                     },
@@ -701,6 +738,10 @@
                                         "value": "${POSTGRESQL_MAX_CONNECTIONS}"
                                         "value": "${POSTGRESQL_MAX_CONNECTIONS}"
                                     },
                                     },
                                     {
                                     {
+                                        "name": "POSTGRESQL_MAX_PREPARED_TRANSACTIONS",
+                                        "value": "${POSTGRESQL_MAX_CONNECTIONS}"
+                                    },
+                                    {
                                         "name": "POSTGRESQL_SHARED_BUFFERS",
                                         "name": "POSTGRESQL_SHARED_BUFFERS",
                                         "value": "${POSTGRESQL_SHARED_BUFFERS}"
                                         "value": "${POSTGRESQL_SHARED_BUFFERS}"
                                     }
                                     }

+ 48 - 7
roles/openshift_examples/files/examples/v1.3/xpaas-templates/eap70-postgresql-s2i.json

@@ -6,13 +6,13 @@
             "description": "Application template for EAP 7 PostgreSQL applications built using S2I.",
             "description": "Application template for EAP 7 PostgreSQL applications built using S2I.",
             "iconClass": "icon-jboss",
             "iconClass": "icon-jboss",
             "tags": "eap,postgresql,javaee,java,database,jboss,xpaas",
             "tags": "eap,postgresql,javaee,java,database,jboss,xpaas",
-            "version": "1.3.1"
+            "version": "1.3.2"
         },
         },
         "name": "eap70-postgresql-s2i"
         "name": "eap70-postgresql-s2i"
     },
     },
     "labels": {
     "labels": {
         "template": "eap70-postgresql-s2i",
         "template": "eap70-postgresql-s2i",
-        "xpaas": "1.3.1"
+        "xpaas": "1.3.2"
     },
     },
     "parameters": [
     "parameters": [
         {
         {
@@ -76,6 +76,12 @@
             "required": false
             "required": false
         },
         },
         {
         {
+            "description": "The name of the service account to use for the deployment.  The service account should be configured to allow useage of the secret(s) specified by HTTPS_SECRET and JGROUPS_ENCRYPT_SECRET.",
+            "name": "SERVICE_ACCOUNT_NAME",
+            "value": "eap7-service-account",
+            "required": true
+        },
+        {
             "description": "The name of the secret containing the keystore file",
             "description": "The name of the secret containing the keystore file",
             "name": "HTTPS_SECRET",
             "name": "HTTPS_SECRET",
             "value": "eap7-app-secret",
             "value": "eap7-app-secret",
@@ -88,6 +94,12 @@
             "required": false
             "required": false
         },
         },
         {
         {
+            "description": "The type of the keystore file (JKS or JCEKS)",
+            "name": "HTTPS_KEYSTORE_TYPE",
+            "value": "",
+            "required": false
+        },
+        {
             "description": "The name associated with the server certificate",
             "description": "The name associated with the server certificate",
             "name": "HTTPS_NAME",
             "name": "HTTPS_NAME",
             "value": "",
             "value": "",
@@ -195,6 +207,12 @@
             "from": "[a-zA-Z0-9]{8}",
             "from": "[a-zA-Z0-9]{8}",
             "generate": "expression",
             "generate": "expression",
             "required": true
             "required": true
+        },
+        {
+            "description": "Controls whether exploded deployment content should be automatically deployed",
+            "name": "AUTO_DEPLOY_EXPLODED",
+            "value": "false",
+            "required": false
         }
         }
     ],
     ],
     "objects": [
     "objects": [
@@ -348,7 +366,7 @@
                         "from": {
                         "from": {
                             "kind": "ImageStreamTag",
                             "kind": "ImageStreamTag",
                             "namespace": "${IMAGE_STREAM_NAMESPACE}",
                             "namespace": "${IMAGE_STREAM_NAMESPACE}",
-                            "name": "jboss-eap70-openshift:1.3"
+                            "name": "jboss-eap70-openshift:1.4"
                         }
                         }
                     }
                     }
                 },
                 },
@@ -403,8 +421,8 @@
                                 "${APPLICATION_NAME}"
                                 "${APPLICATION_NAME}"
                             ],
                             ],
                             "from": {
                             "from": {
-                                "kind": "ImageStream",
-                                "name": "${APPLICATION_NAME}"
+                                "kind": "ImageStreamTag",
+                                "name": "${APPLICATION_NAME}:latest"
                             }
                             }
                         }
                         }
                     },
                     },
@@ -425,8 +443,8 @@
                         }
                         }
                     },
                     },
                     "spec": {
                     "spec": {
-                        "serviceAccountName": "eap7-service-account",
-                        "terminationGracePeriodSeconds": 60,
+                        "serviceAccountName": "${SERVICE_ACCOUNT_NAME}",
+                        "terminationGracePeriodSeconds": 75,
                         "containers": [
                         "containers": [
                             {
                             {
                                 "name": "${APPLICATION_NAME}",
                                 "name": "${APPLICATION_NAME}",
@@ -444,6 +462,17 @@
                                         "readOnly": true
                                         "readOnly": true
                                     }
                                     }
                                 ],
                                 ],
+                                "lifecycle": {
+                                    "preStop": {
+                                        "exec": {
+                                            "command": [
+                                                "/opt/eap/bin/jboss-cli.sh",
+                                                "-c",
+                                                ":shutdown(timeout=60)"
+                                            ]
+                                        }
+                                    }
+                                },
                                 "livenessProbe": {
                                 "livenessProbe": {
                                     "exec": {
                                     "exec": {
                                         "command": [
                                         "command": [
@@ -542,6 +571,10 @@
                                         "value": "${HTTPS_KEYSTORE}"
                                         "value": "${HTTPS_KEYSTORE}"
                                     },
                                     },
                                     {
                                     {
+                                        "name": "HTTPS_KEYSTORE_TYPE",
+                                        "value": "${HTTPS_KEYSTORE_TYPE}"
+                                    },
+                                    {
                                         "name": "HTTPS_NAME",
                                         "name": "HTTPS_NAME",
                                         "value": "${HTTPS_NAME}"
                                         "value": "${HTTPS_NAME}"
                                     },
                                     },
@@ -586,6 +619,10 @@
                                         "value": "${JGROUPS_CLUSTER_PASSWORD}"
                                         "value": "${JGROUPS_CLUSTER_PASSWORD}"
                                     },
                                     },
                                     {
                                     {
+                                        "name": "AUTO_DEPLOY_EXPLODED",
+                                        "value": "${AUTO_DEPLOY_EXPLODED}"
+                                    },
+                                    {
                                         "name": "DEFAULT_JOB_REPOSITORY",
                                         "name": "DEFAULT_JOB_REPOSITORY",
                                         "value": "${APPLICATION_NAME}-postgresql"
                                         "value": "${APPLICATION_NAME}-postgresql"
                                     },
                                     },
@@ -689,6 +726,10 @@
                                         "value": "${POSTGRESQL_MAX_CONNECTIONS}"
                                         "value": "${POSTGRESQL_MAX_CONNECTIONS}"
                                     },
                                     },
                                     {
                                     {
+                                        "name": "POSTGRESQL_MAX_PREPARED_TRANSACTIONS",
+                                        "value": "${POSTGRESQL_MAX_CONNECTIONS}"
+                                    },
+                                    {
                                         "name": "POSTGRESQL_SHARED_BUFFERS",
                                         "name": "POSTGRESQL_SHARED_BUFFERS",
                                         "value": "${POSTGRESQL_SHARED_BUFFERS}"
                                         "value": "${POSTGRESQL_SHARED_BUFFERS}"
                                     }
                                     }

+ 767 - 0
roles/openshift_examples/files/examples/v1.3/xpaas-templates/eap70-sso-s2i.json

@@ -0,0 +1,767 @@
+{
+    "kind": "Template",
+    "apiVersion": "v1",
+    "metadata": {
+        "annotations": {
+            "iconClass" : "icon-jboss",
+            "description": "Application template for EAP 6 applications built using S2I, enabled for SSO.",
+            "tags": "eap,javaee,java,jboss,xpaas,sso,keycloak",
+            "version": "1.3.2"
+        },
+        "name": "eap70-sso-s2i"
+    },
+    "labels": {
+        "template": "eap70-sso-s2i",
+        "xpaas": "1.3.2"
+    },
+    "parameters": [
+        {
+            "description": "The name for the application.",
+            "name": "APPLICATION_NAME",
+            "value": "eap-app",
+            "required": true
+        },
+        {
+            "description": "Hostname for http service route (e.g. eap-app-myproject.example.com).  Required for SSO-enabled applications.  This is added to the white list of redirects in the SSO server.",
+            "name": "HOSTNAME_HTTP",
+            "value": "",
+            "required": true
+        },
+        {
+            "description": "Hostname for https service route (e.g. secure-eap-app-myproject.example.com).  Required for SSO-enabled applications.  This is added to the white list of redirects in the SSO server.",
+            "name": "HOSTNAME_HTTPS",
+            "value": "",
+            "required": true
+        },
+        {
+            "description": "Git source URI for application",
+            "name": "SOURCE_REPOSITORY_URL",
+            "value": "https://github.com/redhat-developer/redhat-sso-quickstarts",
+            "required": true
+        },
+        {
+            "description": "Git branch/tag reference",
+            "name": "SOURCE_REPOSITORY_REF",
+            "value": "7.0.x-ose",
+            "required": false
+        },
+        {
+            "description": "Path within Git project to build; empty for root project directory.",
+            "name": "CONTEXT_DIR",
+            "value": "",
+            "required": false
+        },
+        {
+            "description": "Queue names",
+            "name": "HORNETQ_QUEUES",
+            "value": "",
+            "required": false
+        },
+        {
+            "description": "Topic names",
+            "name": "HORNETQ_TOPICS",
+            "value": "",
+            "required": false
+        },
+        {
+            "description": "The name of the service account to use for the deployment.  The service account should be configured to allow useage of the secret(s) specified by HTTPS_SECRET and JGROUPS_ENCRYPT_SECRET.",
+            "name": "SERVICE_ACCOUNT_NAME",
+            "value": "eap7-service-account",
+            "required": true
+        },
+        {
+            "description": "The name of the secret containing the keystore file",
+            "name": "HTTPS_SECRET",
+            "value": "eap7-app-secret",
+            "required": true
+        },
+        {
+            "description": "The name of the keystore file within the secret",
+            "name": "HTTPS_KEYSTORE",
+            "value": "keystore.jks",
+            "required": false
+        },
+        {
+            "description": "The type of the keystore file (JKS or JCEKS)",
+            "name": "HTTPS_KEYSTORE_TYPE",
+            "value": "",
+            "required": false
+        },
+        {
+            "description": "The name associated with the server certificate (e.g. jboss)",
+            "name": "HTTPS_NAME",
+            "value": "",
+            "required": false
+        },
+        {
+            "description": "The password for the keystore and certificate (e.g. mykeystorepass)",
+            "name": "HTTPS_PASSWORD",
+            "value": "",
+            "required": false
+        },
+        {
+            "description": "HornetQ cluster admin password",
+            "name": "HORNETQ_CLUSTER_PASSWORD",
+            "from": "[a-zA-Z0-9]{8}",
+            "generate": "expression",
+            "required": true
+        },
+        {
+            "description": "GitHub trigger secret",
+            "name": "GITHUB_WEBHOOK_SECRET",
+            "from": "[a-zA-Z0-9]{8}",
+            "generate": "expression",
+            "required": true
+        },
+        {
+            "description": "Generic build trigger secret",
+            "name": "GENERIC_WEBHOOK_SECRET",
+            "from": "[a-zA-Z0-9]{8}",
+            "generate": "expression",
+            "required": true
+        },
+        {
+            "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.",
+            "name": "IMAGE_STREAM_NAMESPACE",
+            "value": "openshift",
+            "required": true
+        },
+        {
+            "description": "The name of the secret containing the keystore file",
+            "name": "JGROUPS_ENCRYPT_SECRET",
+            "value": "eap7-app-secret",
+            "required": false
+        },
+        {
+            "description": "The name of the keystore file within the secret",
+            "name": "JGROUPS_ENCRYPT_KEYSTORE",
+            "value": "jgroups.jceks",
+            "required": false
+        },
+        {
+            "description": "The name associated with the server certificate (e.g. secret-key)",
+            "name": "JGROUPS_ENCRYPT_NAME",
+            "value": "",
+            "required": false
+        },
+        {
+            "description": "The password for the keystore and certificate (e.g. password)",
+            "name": "JGROUPS_ENCRYPT_PASSWORD",
+            "value": "",
+            "required": false
+        },
+        {
+            "description": "JGroups cluster password",
+            "name": "JGROUPS_CLUSTER_PASSWORD",
+            "from": "[a-zA-Z0-9]{8}",
+            "generate": "expression",
+            "required": true
+        },
+        {
+            "description": "Controls whether exploded deployment content should be automatically deployed",
+            "name": "AUTO_DEPLOY_EXPLODED",
+            "value": "false",
+            "required": false
+        },
+        {
+            "description": "The URL for the SSO server (e.g. https://secure-sso-myproject.example.com/auth).  This is the URL through which the user will be redirected when a login or token is required by the application.",
+            "name": "SSO_URL",
+            "value": "",
+            "required": true
+        },
+        {
+            "description": "The URL for the interal SSO service, where secure-sso (the default) is the kubernetes service exposed by the SSO server.  This is used to create the application client(s) (see SSO_USERNAME).  This can also be the same as SSO_URL.",
+            "name": "SSO_SERVICE_URL",
+            "value": "https://secure-sso:8443/auth",
+            "required": false
+        },
+        {
+            "description": "The SSO realm to which the application client(s) should be associated (e.g. demo).",
+            "name": "SSO_REALM",
+            "value": "",
+            "required": true
+        },
+        {
+            "description": "The username used to access the SSO service.  This is used to create the appliction client(s) within the specified SSO realm. This should match the SSO_SERVICE_USERNAME specified through one of the sso70-* templates.",
+            "name": "SSO_USERNAME",
+            "value": "",
+            "required": false
+        },
+        {
+            "description": "The password for the SSO service user.",
+            "name": "SSO_PASSWORD",
+            "value": "",
+            "required": false
+        },
+        {
+            "description": "SSO Public Key. Public key is recommended to be passed into the template to avoid man-in-the-middle security vulnerability",
+            "name": "SSO_PUBLIC_KEY",
+            "value": "",
+            "required": false
+        },
+        {
+            "description": "SSO Client Access Type",
+            "name": "SSO_BEARER_ONLY",
+            "value": "",
+            "required": false
+        },
+        {
+            "description": "List of directories from which archives will be copied into the deployment folder.  If unspecified, all archives in /target will be copied.",
+            "name": "ARTIFACT_DIR",
+            "value": "app-jee-jsp/target,service-jee-jaxrs/target,app-profile-jee-jsp/target,app-profile-saml-jee-jsp/target",
+            "required": false
+        },
+        {
+            "description": "The name of the secret containing the keystore file",
+            "name": "SSO_SAML_KEYSTORE_SECRET",
+            "value": "eap7-app-secret",
+            "required": false
+        },
+        {
+            "description": "The name of the keystore file within the secret",
+            "name": "SSO_SAML_KEYSTORE",
+            "value": "keystore.jks",
+            "required": false
+        },
+        {
+            "description": "The name associated with the server certificate",
+            "name": "SSO_SAML_CERTIFICATE_NAME",
+            "value": "jboss",
+            "required": false
+        },
+        {
+            "description": "The password for the keystore and certificate",
+            "name": "SSO_SAML_KEYSTORE_PASSWORD",
+            "value": "mykeystorepass",
+            "required": false
+        },
+        {
+            "description": "The SSO Client Secret for Confidential Access",
+            "name": "SSO_SECRET",
+            "from": "[a-zA-Z0-9]{8}",
+            "generate": "expression",
+            "required": true
+        },
+        {
+            "description": "Enable CORS for SSO applications",
+            "name": "SSO_ENABLE_CORS",
+            "value": "false",
+            "required": false
+        },
+        {
+            "description": "SSO logout page for SAML applications",
+            "name": "SSO_SAML_LOGOUT_PAGE",
+            "value": "/",
+            "required": false
+        },
+        {
+            "description": "If true SSL communication between EAP and the SSO Server will be insecure (i.e. certificate validation is disabled with curl)",
+            "name": "SSO_DISABLE_SSL_CERTIFICATE_VALIDATION",
+            "value": "true",
+            "required": false
+        },
+        {
+            "description": "The name of the truststore file within the secret (e.g. truststore.jks)",
+            "name": "SSO_TRUSTSTORE",
+            "value": "",
+            "required": false
+        },
+        {
+            "description": "The password for the truststore and certificate (e.g. mykeystorepass)",
+            "name": "SSO_TRUSTSTORE_PASSWORD",
+            "value": "",
+            "required": false
+        },
+        {
+            "description": "The name of the secret containing the truststore file (e.g. truststore-secret). Used for volume secretName",
+            "name": "SSO_TRUSTSTORE_SECRET",
+            "value": "eap7-app-secret",
+            "required": false
+        }
+   ],
+    "objects": [
+        {
+            "kind": "Service",
+            "apiVersion": "v1",
+            "spec": {
+                "ports": [
+                    {
+                        "port": 8080,
+                        "targetPort": 8080
+                    }
+                ],
+                "selector": {
+                    "deploymentConfig": "${APPLICATION_NAME}"
+                }
+            },
+            "metadata": {
+                "name": "${APPLICATION_NAME}",
+                "labels": {
+                    "application": "${APPLICATION_NAME}"
+                },
+                "annotations": {
+                    "description": "The web server's http port."
+                }
+            }
+        },
+        {
+            "kind": "Service",
+            "apiVersion": "v1",
+            "spec": {
+                "ports": [
+                    {
+                        "port": 8443,
+                        "targetPort": 8443
+                    }
+                ],
+                "selector": {
+                    "deploymentConfig": "${APPLICATION_NAME}"
+                }
+            },
+            "metadata": {
+                "name": "secure-${APPLICATION_NAME}",
+                "labels": {
+                    "application": "${APPLICATION_NAME}"
+                },
+                "annotations": {
+                    "description": "The web server's https port."
+                }
+            }
+        },
+        {
+            "kind": "Route",
+            "apiVersion": "v1",
+            "id": "${APPLICATION_NAME}-http",
+            "metadata": {
+                "name": "${APPLICATION_NAME}",
+                "labels": {
+                    "application": "${APPLICATION_NAME}"
+                },
+                "annotations": {
+                    "description": "Route for application's http service."
+                }
+            },
+            "spec": {
+                "host": "${HOSTNAME_HTTP}",
+                "to": {
+                    "name": "${APPLICATION_NAME}"
+                }
+            }
+        },
+        {
+            "kind": "Route",
+            "apiVersion": "v1",
+            "id": "${APPLICATION_NAME}-https",
+            "metadata": {
+                "name": "secure-${APPLICATION_NAME}",
+                "labels": {
+                    "application": "${APPLICATION_NAME}"
+                },
+                "annotations": {
+                    "description": "Route for application's https service."
+                }
+            },
+            "spec": {
+                "host": "${HOSTNAME_HTTPS}",
+                "to": {
+                    "name": "secure-${APPLICATION_NAME}"
+                },
+                "tls": {
+                    "termination": "passthrough"
+                }
+            }
+        },
+        {
+            "kind": "ImageStream",
+            "apiVersion": "v1",
+            "metadata": {
+                "name": "${APPLICATION_NAME}",
+                "labels": {
+                    "application": "${APPLICATION_NAME}"
+                }
+            }
+        },
+        {
+            "kind": "BuildConfig",
+            "apiVersion": "v1",
+            "metadata": {
+                "name": "${APPLICATION_NAME}",
+                "labels": {
+                    "application": "${APPLICATION_NAME}"
+                }
+            },
+            "spec": {
+                "source": {
+                    "type": "Git",
+                    "git": {
+                        "uri": "${SOURCE_REPOSITORY_URL}",
+                        "ref": "${SOURCE_REPOSITORY_REF}"
+                    },
+                    "contextDir": "${CONTEXT_DIR}"
+                },
+                "strategy": {
+                    "type": "Source",
+                    "sourceStrategy": {
+                        "forcePull": true,
+                        "from": {
+                            "kind": "ImageStreamTag",
+                            "namespace": "${IMAGE_STREAM_NAMESPACE}",
+                            "name": "jboss-eap70-openshift:1.4"
+                        },
+                        "env": [
+                            {
+                                "name": "ARTIFACT_DIR",
+                                "value": "${ARTIFACT_DIR}"
+                            },
+                            {
+                                "name": "MAVEN_ARGS_APPEND",
+                                "value": ""
+                            }
+                        ]
+                    }
+                },
+                "output": {
+                    "to": {
+                        "kind": "ImageStreamTag",
+                        "name": "${APPLICATION_NAME}:latest"
+                    }
+                },
+                "triggers": [
+                    {
+                        "type": "GitHub",
+                        "github": {
+                            "secret": "${GITHUB_WEBHOOK_SECRET}"
+                        }
+                    },
+                    {
+                        "type": "Generic",
+                        "generic": {
+                            "secret": "${GENERIC_WEBHOOK_SECRET}"
+                        }
+                    },
+                    {
+                        "type": "ImageChange",
+                        "imageChange": {}
+                    },
+                    {
+                        "type": "ConfigChange"
+                    }
+                ]
+            }
+        },
+        {
+            "kind": "DeploymentConfig",
+            "apiVersion": "v1",
+            "metadata": {
+                "name": "${APPLICATION_NAME}",
+                "labels": {
+                    "application": "${APPLICATION_NAME}"
+                }
+            },
+            "spec": {
+                "strategy": {
+                    "type": "Recreate"
+                },
+                "triggers": [
+                    {
+                        "type": "ImageChange",
+                        "imageChangeParams": {
+                            "automatic": true,
+                            "containerNames": [
+                                "${APPLICATION_NAME}"
+                            ],
+                            "from": {
+                                "kind": "ImageStreamTag",
+                                "name": "${APPLICATION_NAME}:latest"
+                            }
+                        }
+                    },
+                    {
+                        "type": "ConfigChange"
+                    }
+                ],
+                "replicas": 1,
+                "selector": {
+                    "deploymentConfig": "${APPLICATION_NAME}"
+                },
+                "template": {
+                    "metadata": {
+                        "name": "${APPLICATION_NAME}",
+                        "labels": {
+                            "deploymentConfig": "${APPLICATION_NAME}",
+                            "application": "${APPLICATION_NAME}"
+                        }
+                    },
+                    "spec": {
+                        "serviceAccountName": "${SERVICE_ACCOUNT_NAME}",
+                        "terminationGracePeriodSeconds": 75,
+                        "containers": [
+                            {
+                                "name": "${APPLICATION_NAME}",
+                                "image": "${APPLICATION_NAME}",
+                                "imagePullPolicy": "Always",
+                                "volumeMounts": [
+                                    {
+                                        "name": "sso-saml-keystore-volume",
+                                        "mountPath": "/etc/sso-saml-secret-volume",
+                                        "readOnly": true
+                                    },
+                                    {
+                                        "name": "eap-keystore-volume",
+                                        "mountPath": "/etc/eap-secret-volume",
+                                        "readOnly": true
+                                    },
+                                    {
+                                        "name": "eap-jgroups-keystore-volume",
+                                        "mountPath": "/etc/jgroups-encrypt-secret-volume",
+                                        "readOnly": true
+                                    },
+                                    {
+                                        "name": "sso-truststore-volume",
+                                        "mountPath": "/etc/sso-secret-volume",
+                                        "readOnly": true
+                                    }
+                                ],
+                                "lifecycle": {
+                                    "preStop": {
+                                        "exec": {
+                                            "command": [
+                                                "/opt/eap/bin/jboss-cli.sh",
+                                                "-c",
+                                                ":shutdown(timeout=60)"
+                                            ]
+                                        }
+                                    }
+                                },
+                                "livenessProbe": {
+                                    "exec": {
+                                        "command": [
+                                            "/bin/bash",
+                                            "-c",
+                                            "/opt/eap/bin/livenessProbe.sh"
+                                        ]
+                                    }
+                                },
+                                "readinessProbe": {
+                                    "exec": {
+                                        "command": [
+                                            "/bin/bash",
+                                            "-c",
+                                            "/opt/eap/bin/readinessProbe.sh"
+                                        ]
+                                    }
+                                },
+                                "ports": [
+                                    {
+                                        "name": "jolokia",
+                                        "containerPort": 8778,
+                                        "protocol": "TCP"
+                                    },
+                                    {
+                                        "name": "http",
+                                        "containerPort": 8080,
+                                        "protocol": "TCP"
+                                    },
+                                    {
+                                        "name": "https",
+                                        "containerPort": 8443,
+                                        "protocol": "TCP"
+                                    },
+                                    {
+                                        "name": "ping",
+                                        "containerPort": 8888,
+                                        "protocol": "TCP"
+                                    }
+                                ],
+                                "env": [
+                                    {
+                                        "name": "OPENSHIFT_KUBE_PING_LABELS",
+                                        "value": "application=${APPLICATION_NAME}"
+                                    },
+                                    {
+                                        "name": "OPENSHIFT_KUBE_PING_NAMESPACE",
+                                        "valueFrom": {
+                                            "fieldRef": {
+                                                "fieldPath": "metadata.namespace"
+                                            }
+                                        }
+                                    },
+                                    {
+                                        "name": "HOSTNAME_HTTP",
+                                        "value": "${HOSTNAME_HTTP}"
+                                    },
+                                    {
+                                        "name": "HOSTNAME_HTTPS",
+                                        "value": "${HOSTNAME_HTTPS}"
+                                    }, 
+                                    {
+                                        "name": "HTTPS_KEYSTORE_DIR",
+                                        "value": "/etc/eap-secret-volume"
+                                    },
+                                    {
+                                        "name": "HTTPS_KEYSTORE",
+                                        "value": "${HTTPS_KEYSTORE}"
+                                    },
+                                    {
+                                        "name": "HTTPS_KEYSTORE_TYPE",
+                                        "value": "${HTTPS_KEYSTORE_TYPE}"
+                                    },
+                                    {
+                                        "name": "HTTPS_NAME",
+                                        "value": "${HTTPS_NAME}"
+                                    },
+                                    {
+                                        "name": "HTTPS_PASSWORD",
+                                        "value": "${HTTPS_PASSWORD}"
+                                    },
+                                    {
+                                        "name": "HORNETQ_CLUSTER_PASSWORD",
+                                        "value": "${HORNETQ_CLUSTER_PASSWORD}"
+                                    },
+                                    {
+                                        "name": "HORNETQ_QUEUES",
+                                        "value": "${HORNETQ_QUEUES}"
+                                    },
+                                    {
+                                        "name": "HORNETQ_TOPICS",
+                                        "value": "${HORNETQ_TOPICS}"
+                                    },
+				                    {
+                                        "name": "JGROUPS_ENCRYPT_SECRET",
+                                        "value": "${JGROUPS_ENCRYPT_SECRET}"
+                                    },
+                                    {
+                                        "name": "JGROUPS_ENCRYPT_KEYSTORE_DIR",
+                                        "value": "/etc/jgroups-encrypt-secret-volume"
+                                    },
+                                    {
+                                        "name": "JGROUPS_ENCRYPT_KEYSTORE",
+                                        "value": "${JGROUPS_ENCRYPT_KEYSTORE}"
+                                    },
+                                    {
+                                        "name": "JGROUPS_ENCRYPT_NAME",
+                                        "value": "${JGROUPS_ENCRYPT_NAME}"
+                                    },
+                                    {
+                                        "name": "JGROUPS_ENCRYPT_PASSWORD",
+                                        "value": "${JGROUPS_ENCRYPT_PASSWORD}"
+                                    },
+                                    {
+                                        "name": "JGROUPS_CLUSTER_PASSWORD",
+                                        "value": "${JGROUPS_CLUSTER_PASSWORD}"
+                                    },
+                                    {
+                                        "name": "AUTO_DEPLOY_EXPLODED",
+                                        "value": "${AUTO_DEPLOY_EXPLODED}"
+                                    },
+                                    {
+                                        "name": "SSO_URL",
+                                        "value": "${SSO_URL}"
+                                    },
+                                    {
+                                        "name": "SSO_SERVICE_URL",
+                                        "value": "${SSO_SERVICE_URL}"
+                                    },
+                                    {
+                                        "name": "SSO_REALM",
+                                        "value": "${SSO_REALM}"
+                                    },
+                                    {
+                                        "name": "SSO_USERNAME",
+                                        "value": "${SSO_USERNAME}"
+                                    },
+                                    {
+                                        "name": "SSO_PASSWORD",
+                                        "value": "${SSO_PASSWORD}"
+                                    },
+                                    {
+                                        "name": "SSO_PUBLIC_KEY",
+                                        "value": "${SSO_PUBLIC_KEY}"
+                                    },
+                                    {
+                                        "name": "SSO_BEARER_ONLY",
+                                        "value": "${SSO_BEARER_ONLY}"
+                                    },
+                                    {
+                                        "name": "SSO_SAML_KEYSTORE_SECRET",
+                                        "value": "${SSO_SAML_KEYSTORE_SECRET}"
+                                    },
+                                    {
+                                        "name": "SSO_SAML_KEYSTORE",
+                                        "value": "${SSO_SAML_KEYSTORE}"
+                                    },
+                                    {
+                                        "name": "SSO_SAML_KEYSTORE_DIR",
+                                        "value": "/etc/sso-saml-secret-volume"
+                                    },
+                                    {
+                                        "name": "SSO_SAML_CERTIFICATE_NAME",
+                                        "value": "${SSO_SAML_CERTIFICATE_NAME}"
+                                    },
+                                    {
+                                        "name": "SSO_SAML_KEYSTORE_PASSWORD",
+                                        "value": "${SSO_SAML_KEYSTORE_PASSWORD}"
+                                    },
+                                    {
+                                        "name": "SSO_SECRET",
+                                        "value": "${SSO_SECRET}"
+                                    },
+                                    {
+                                        "name": "SSO_ENABLE_CORS",
+                                        "value": "${SSO_ENABLE_CORS}"
+                                    },
+                                    {
+                                        "name": "SSO_SAML_LOGOUT_PAGE",
+                                        "value": "${SSO_SAML_LOGOUT_PAGE}"
+                                    },
+                                    {
+                                        "name": "SSO_DISABLE_SSL_CERTIFICATE_VALIDATION",
+                                        "value": "${SSO_DISABLE_SSL_CERTIFICATE_VALIDATION}"
+                                    },
+                                    {
+                                        "name": "SSO_TRUSTSTORE",
+                                        "value": "${SSO_TRUSTSTORE}"
+                                    },
+                                    {
+                                        "name": "SSO_TRUSTSTORE_DIR",
+                                        "value": "/etc/sso-secret-volume"
+                                    },
+                                    {
+                                        "name": "SSO_TRUSTSTORE_PASSWORD",
+                                        "value": "${SSO_TRUSTSTORE_PASSWORD}"
+                                    }
+                                ]
+                            }
+                        ],
+                        "volumes": [
+                            {
+                                "name": "sso-saml-keystore-volume",
+                                "secret": {
+                                    "secretName": "${SSO_SAML_KEYSTORE_SECRET}"
+                                }
+                            },
+                            {
+                                "name": "eap-keystore-volume",
+                                "secret": {
+                                    "secretName": "${HTTPS_SECRET}"
+                                }
+                            },
+                            {
+                                "name": "eap-jgroups-keystore-volume",
+                                "secret": {
+                                    "secretName": "${JGROUPS_ENCRYPT_SECRET}"
+                                }
+                            },
+                            {
+                                "name": "sso-truststore-volume",
+                                "secret": {
+                                    "secretName": "${SSO_TRUSTSTORE_SECRET}"
+                                }
+                            }
+                        ]
+                    }
+                }
+            }
+        }
+    ]
+}

+ 2 - 2
roles/openshift_examples/files/examples/v1.3/xpaas-templates/jws30-tomcat7-basic-s2i.json

@@ -215,8 +215,8 @@
                                 "${APPLICATION_NAME}"
                                 "${APPLICATION_NAME}"
                             ],
                             ],
                             "from": {
                             "from": {
-                                "kind": "ImageStream",
-                                "name": "${APPLICATION_NAME}"
+                                "kind": "ImageStreamTag",
+                                "name": "${APPLICATION_NAME}:latest"
                             }
                             }
                         }
                         }
                     },
                     },

+ 2 - 2
roles/openshift_examples/files/examples/v1.3/xpaas-templates/jws30-tomcat7-https-s2i.json

@@ -292,8 +292,8 @@
                                 "${APPLICATION_NAME}"
                                 "${APPLICATION_NAME}"
                             ],
                             ],
                             "from": {
                             "from": {
-                                "kind": "ImageStream",
-                                "name": "${APPLICATION_NAME}"
+                                "kind": "ImageStreamTag",
+                                "name": "${APPLICATION_NAME}:latest"
                             }
                             }
                         }
                         }
                     },
                     },

+ 2 - 2
roles/openshift_examples/files/examples/v1.3/xpaas-templates/jws30-tomcat7-mongodb-persistent-s2i.json

@@ -385,8 +385,8 @@
                                 "${APPLICATION_NAME}"
                                 "${APPLICATION_NAME}"
                             ],
                             ],
                             "from": {
                             "from": {
-                                "kind": "ImageStream",
-                                "name": "${APPLICATION_NAME}"
+                                "kind": "ImageStreamTag",
+                                "name": "${APPLICATION_NAME}:latest"
                             }
                             }
                         }
                         }
                     },
                     },

+ 2 - 2
roles/openshift_examples/files/examples/v1.3/xpaas-templates/jws30-tomcat7-mongodb-s2i.json

@@ -379,8 +379,8 @@
                                 "${APPLICATION_NAME}"
                                 "${APPLICATION_NAME}"
                             ],
                             ],
                             "from": {
                             "from": {
-                                "kind": "ImageStream",
-                                "name": "${APPLICATION_NAME}"
+                                "kind": "ImageStreamTag",
+                                "name": "${APPLICATION_NAME}:latest"
                             }
                             }
                         }
                         }
                     },
                     },

+ 2 - 2
roles/openshift_examples/files/examples/v1.3/xpaas-templates/jws30-tomcat7-mysql-persistent-s2i.json

@@ -388,8 +388,8 @@
                                 "${APPLICATION_NAME}"
                                 "${APPLICATION_NAME}"
                             ],
                             ],
                             "from": {
                             "from": {
-                                "kind": "ImageStream",
-                                "name": "${APPLICATION_NAME}"
+                                "kind": "ImageStreamTag",
+                                "name": "${APPLICATION_NAME}:latest"
                             }
                             }
                         }
                         }
                     },
                     },

+ 2 - 2
roles/openshift_examples/files/examples/v1.3/xpaas-templates/jws30-tomcat7-mysql-s2i.json

@@ -382,8 +382,8 @@
                                 "${APPLICATION_NAME}"
                                 "${APPLICATION_NAME}"
                             ],
                             ],
                             "from": {
                             "from": {
-                                "kind": "ImageStream",
-                                "name": "${APPLICATION_NAME}"
+                                "kind": "ImageStreamTag",
+                                "name": "${APPLICATION_NAME}:latest"
                             }
                             }
                         }
                         }
                     },
                     },

+ 8 - 4
roles/openshift_examples/files/examples/v1.3/xpaas-templates/jws30-tomcat7-postgresql-persistent-s2i.json

@@ -6,13 +6,13 @@
             "iconClass": "icon-tomcat",
             "iconClass": "icon-tomcat",
             "description": "Application template for JWS PostgreSQL applications with persistent storage built using S2I.",
             "description": "Application template for JWS PostgreSQL applications with persistent storage built using S2I.",
             "tags": "tomcat,tomcat7,postgresql,java,database,jboss,xpaas",
             "tags": "tomcat,tomcat7,postgresql,java,database,jboss,xpaas",
-            "version": "1.2.0"
+            "version": "1.3.2"
         },
         },
         "name": "jws30-tomcat7-postgresql-persistent-s2i"
         "name": "jws30-tomcat7-postgresql-persistent-s2i"
     },
     },
     "labels": {
     "labels": {
         "template": "jws30-tomcat7-postgresql-persistent-s2i",
         "template": "jws30-tomcat7-postgresql-persistent-s2i",
-        "xpaas": "1.2.0"
+        "xpaas": "1.3.2"
     },
     },
     "parameters": [
     "parameters": [
         {
         {
@@ -373,8 +373,8 @@
                                 "${APPLICATION_NAME}"
                                 "${APPLICATION_NAME}"
                             ],
                             ],
                             "from": {
                             "from": {
-                                "kind": "ImageStream",
-                                "name": "${APPLICATION_NAME}"
+                                "kind": "ImageStreamTag",
+                                "name": "${APPLICATION_NAME}:latest"
                             }
                             }
                         }
                         }
                     },
                     },
@@ -587,6 +587,10 @@
                                         "value": "${POSTGRESQL_MAX_CONNECTIONS}"
                                         "value": "${POSTGRESQL_MAX_CONNECTIONS}"
                                     },
                                     },
                                     {
                                     {
+                                        "name": "POSTGRESQL_MAX_PREPARED_TRANSACTIONS",
+                                        "value": "${POSTGRESQL_MAX_CONNECTIONS}"
+                                    },
+                                    {
                                         "name": "POSTGRESQL_SHARED_BUFFERS",
                                         "name": "POSTGRESQL_SHARED_BUFFERS",
                                         "value": "${POSTGRESQL_SHARED_BUFFERS}"
                                         "value": "${POSTGRESQL_SHARED_BUFFERS}"
                                     }
                                     }

+ 8 - 4
roles/openshift_examples/files/examples/v1.3/xpaas-templates/jws30-tomcat7-postgresql-s2i.json

@@ -6,13 +6,13 @@
             "iconClass": "icon-tomcat",
             "iconClass": "icon-tomcat",
             "description": "Application template for JWS PostgreSQL applications built using S2I.",
             "description": "Application template for JWS PostgreSQL applications built using S2I.",
             "tags": "tomcat,tomcat7,postgresql,java,database,jboss,xpaas",
             "tags": "tomcat,tomcat7,postgresql,java,database,jboss,xpaas",
-            "version": "1.2.0"
+            "version": "1.3.2"
         },
         },
         "name": "jws30-tomcat7-postgresql-s2i"
         "name": "jws30-tomcat7-postgresql-s2i"
     },
     },
     "labels": {
     "labels": {
         "template": "jws30-tomcat7-postgresql-s2i",
         "template": "jws30-tomcat7-postgresql-s2i",
-        "xpaas": "1.2.0"
+        "xpaas": "1.3.2"
     },
     },
     "parameters": [
     "parameters": [
         {
         {
@@ -367,8 +367,8 @@
                                 "${APPLICATION_NAME}"
                                 "${APPLICATION_NAME}"
                             ],
                             ],
                             "from": {
                             "from": {
-                                "kind": "ImageStream",
-                                "name": "${APPLICATION_NAME}"
+                                "kind": "ImageStreamTag",
+                                "name": "${APPLICATION_NAME}:latest"
                             }
                             }
                         }
                         }
                     },
                     },
@@ -575,6 +575,10 @@
                                         "value": "${POSTGRESQL_MAX_CONNECTIONS}"
                                         "value": "${POSTGRESQL_MAX_CONNECTIONS}"
                                     },
                                     },
                                     {
                                     {
+                                        "name": "POSTGRESQL_MAX_PREPARED_TRANSACTIONS",
+                                        "value": "${POSTGRESQL_MAX_CONNECTIONS}"
+                                    },
+                                    {
                                         "name": "POSTGRESQL_SHARED_BUFFERS",
                                         "name": "POSTGRESQL_SHARED_BUFFERS",
                                         "value": "${POSTGRESQL_SHARED_BUFFERS}"
                                         "value": "${POSTGRESQL_SHARED_BUFFERS}"
                                     }
                                     }

+ 2 - 2
roles/openshift_examples/files/examples/v1.3/xpaas-templates/jws30-tomcat8-basic-s2i.json

@@ -215,8 +215,8 @@
                                 "${APPLICATION_NAME}"
                                 "${APPLICATION_NAME}"
                             ],
                             ],
                             "from": {
                             "from": {
-                                "kind": "ImageStream",
-                                "name": "${APPLICATION_NAME}"
+                                "kind": "ImageStreamTag",
+                                "name": "${APPLICATION_NAME}:latest"
                             }
                             }
                         }
                         }
                     },
                     },

+ 2 - 2
roles/openshift_examples/files/examples/v1.3/xpaas-templates/jws30-tomcat8-https-s2i.json

@@ -292,8 +292,8 @@
                                 "${APPLICATION_NAME}"
                                 "${APPLICATION_NAME}"
                             ],
                             ],
                             "from": {
                             "from": {
-                                "kind": "ImageStream",
-                                "name": "${APPLICATION_NAME}"
+                                "kind": "ImageStreamTag",
+                                "name": "${APPLICATION_NAME}:latest"
                             }
                             }
                         }
                         }
                     },
                     },

+ 2 - 2
roles/openshift_examples/files/examples/v1.3/xpaas-templates/jws30-tomcat8-mongodb-persistent-s2i.json

@@ -385,8 +385,8 @@
                                 "${APPLICATION_NAME}"
                                 "${APPLICATION_NAME}"
                             ],
                             ],
                             "from": {
                             "from": {
-                                "kind": "ImageStream",
-                                "name": "${APPLICATION_NAME}"
+                                "kind": "ImageStreamTag",
+                                "name": "${APPLICATION_NAME}:latest"
                             }
                             }
                         }
                         }
                     },
                     },

+ 2 - 2
roles/openshift_examples/files/examples/v1.3/xpaas-templates/jws30-tomcat8-mongodb-s2i.json

@@ -379,8 +379,8 @@
                                 "${APPLICATION_NAME}"
                                 "${APPLICATION_NAME}"
                             ],
                             ],
                             "from": {
                             "from": {
-                                "kind": "ImageStream",
-                                "name": "${APPLICATION_NAME}"
+                                "kind": "ImageStreamTag",
+                                "name": "${APPLICATION_NAME}:latest"
                             }
                             }
                         }
                         }
                     },
                     },

+ 2 - 2
roles/openshift_examples/files/examples/v1.3/xpaas-templates/jws30-tomcat8-mysql-persistent-s2i.json

@@ -388,8 +388,8 @@
                                 "${APPLICATION_NAME}"
                                 "${APPLICATION_NAME}"
                             ],
                             ],
                             "from": {
                             "from": {
-                                "kind": "ImageStream",
-                                "name": "${APPLICATION_NAME}"
+                                "kind": "ImageStreamTag",
+                                "name": "${APPLICATION_NAME}:latest"
                             }
                             }
                         }
                         }
                     },
                     },

+ 0 - 0
roles/openshift_examples/files/examples/v1.3/xpaas-templates/jws30-tomcat8-mysql-s2i.json


Some files were not shown because too many files changed in this diff