summaryrefslogtreecommitdiffstats
path: root/roles/openshift_examples/files/examples/v3.9
diff options
context:
space:
mode:
Diffstat (limited to 'roles/openshift_examples/files/examples/v3.9')
-rw-r--r--roles/openshift_examples/files/examples/v3.9/cfme-templates/cfme-backup-job.yaml28
-rw-r--r--roles/openshift_examples/files/examples/v3.9/cfme-templates/cfme-backup-pvc.yaml10
-rw-r--r--roles/openshift_examples/files/examples/v3.9/cfme-templates/cfme-pv-backup-example.yaml13
-rw-r--r--roles/openshift_examples/files/examples/v3.9/cfme-templates/cfme-pv-db-example.yaml45
-rw-r--r--roles/openshift_examples/files/examples/v3.9/cfme-templates/cfme-pv-region-example.yaml13
-rw-r--r--roles/openshift_examples/files/examples/v3.9/cfme-templates/cfme-pv-server-example.yaml45
-rw-r--r--roles/openshift_examples/files/examples/v3.9/cfme-templates/cfme-restore-job.yaml35
-rw-r--r--roles/openshift_examples/files/examples/v3.9/cfme-templates/cfme-scc-sysadmin.yaml38
-rw-r--r--roles/openshift_examples/files/examples/v3.9/cfme-templates/cfme-template-ext-db.yaml956
-rw-r--r--roles/openshift_examples/files/examples/v3.9/cfme-templates/cfme-template.yaml1424
-rw-r--r--roles/openshift_examples/files/examples/v3.9/cfme-templates/jboss-middleware-manager-template.yaml2
-rw-r--r--roles/openshift_examples/files/examples/v3.9/db-templates/mariadb-ephemeral-template.json15
-rw-r--r--roles/openshift_examples/files/examples/v3.9/db-templates/mariadb-persistent-template.json17
-rw-r--r--roles/openshift_examples/files/examples/v3.9/db-templates/mongodb-persistent-template.json2
-rw-r--r--roles/openshift_examples/files/examples/v3.9/db-templates/mysql-ephemeral-template.json4
-rw-r--r--roles/openshift_examples/files/examples/v3.9/db-templates/mysql-persistent-template.json6
-rw-r--r--roles/openshift_examples/files/examples/v3.9/db-templates/postgresql-ephemeral-template.json16
-rw-r--r--roles/openshift_examples/files/examples/v3.9/db-templates/postgresql-persistent-template.json18
-rw-r--r--roles/openshift_examples/files/examples/v3.9/db-templates/redis-persistent-template.json2
-rw-r--r--roles/openshift_examples/files/examples/v3.9/image-streams/image-streams-centos7.json292
-rw-r--r--roles/openshift_examples/files/examples/v3.9/image-streams/image-streams-rhel7.json222
-rw-r--r--roles/openshift_examples/files/examples/v3.9/quickstart-templates/README.md1
-rw-r--r--roles/openshift_examples/files/examples/v3.9/quickstart-templates/cakephp-mysql-persistent.json7
-rw-r--r--roles/openshift_examples/files/examples/v3.9/quickstart-templates/cakephp-mysql.json5
-rw-r--r--roles/openshift_examples/files/examples/v3.9/quickstart-templates/dancer-mysql-persistent.json5
-rw-r--r--roles/openshift_examples/files/examples/v3.9/quickstart-templates/dancer-mysql.json3
-rw-r--r--roles/openshift_examples/files/examples/v3.9/quickstart-templates/django-postgresql-persistent.json5
-rw-r--r--roles/openshift_examples/files/examples/v3.9/quickstart-templates/django-postgresql.json3
-rw-r--r--roles/openshift_examples/files/examples/v3.9/quickstart-templates/httpd.json10
-rw-r--r--roles/openshift_examples/files/examples/v3.9/quickstart-templates/jenkins-ephemeral-template.json11
-rw-r--r--roles/openshift_examples/files/examples/v3.9/quickstart-templates/jenkins-persistent-template.json13
-rw-r--r--roles/openshift_examples/files/examples/v3.9/quickstart-templates/nginx.json283
-rw-r--r--roles/openshift_examples/files/examples/v3.9/quickstart-templates/nodejs-mongodb-persistent.json2
-rw-r--r--roles/openshift_examples/files/examples/v3.9/quickstart-templates/nodejs-mongodb.json3
-rw-r--r--roles/openshift_examples/files/examples/v3.9/quickstart-templates/rails-postgresql-persistent.json5
-rw-r--r--roles/openshift_examples/files/examples/v3.9/quickstart-templates/rails-postgresql.json3
-rw-r--r--roles/openshift_examples/files/examples/v3.9/xpaas-streams/jboss-image-streams.json276
-rw-r--r--roles/openshift_examples/files/examples/v3.9/xpaas-templates/amq62-basic.json36
-rw-r--r--roles/openshift_examples/files/examples/v3.9/xpaas-templates/amq62-persistent-ssl.json45
-rw-r--r--roles/openshift_examples/files/examples/v3.9/xpaas-templates/amq62-persistent.json42
-rw-r--r--roles/openshift_examples/files/examples/v3.9/xpaas-templates/amq62-ssl.json39
-rw-r--r--roles/openshift_examples/files/examples/v3.9/xpaas-templates/amq63-basic.json36
-rw-r--r--roles/openshift_examples/files/examples/v3.9/xpaas-templates/amq63-persistent-ssl.json45
-rw-r--r--roles/openshift_examples/files/examples/v3.9/xpaas-templates/amq63-persistent.json42
-rw-r--r--roles/openshift_examples/files/examples/v3.9/xpaas-templates/amq63-ssl.json39
-rw-r--r--roles/openshift_examples/files/examples/v3.9/xpaas-templates/datagrid65-basic.json62
-rw-r--r--roles/openshift_examples/files/examples/v3.9/xpaas-templates/datagrid65-https.json65
-rw-r--r--roles/openshift_examples/files/examples/v3.9/xpaas-templates/datagrid65-mysql-persistent.json67
-rw-r--r--roles/openshift_examples/files/examples/v3.9/xpaas-templates/datagrid65-mysql.json79
-rw-r--r--roles/openshift_examples/files/examples/v3.9/xpaas-templates/datagrid65-postgresql-persistent.json67
-rw-r--r--roles/openshift_examples/files/examples/v3.9/xpaas-templates/datagrid65-postgresql.json79
-rw-r--r--roles/openshift_examples/files/examples/v3.9/xpaas-templates/datagrid71-basic.json62
-rw-r--r--roles/openshift_examples/files/examples/v3.9/xpaas-templates/datagrid71-https.json65
-rw-r--r--roles/openshift_examples/files/examples/v3.9/xpaas-templates/datagrid71-mysql-persistent.json67
-rw-r--r--roles/openshift_examples/files/examples/v3.9/xpaas-templates/datagrid71-mysql.json79
-rw-r--r--roles/openshift_examples/files/examples/v3.9/xpaas-templates/datagrid71-partition.json64
-rw-r--r--roles/openshift_examples/files/examples/v3.9/xpaas-templates/datagrid71-postgresql-persistent.json67
-rw-r--r--roles/openshift_examples/files/examples/v3.9/xpaas-templates/datagrid71-postgresql.json79
-rw-r--r--roles/openshift_examples/files/examples/v3.9/xpaas-templates/datavirt63-basic-s2i.json72
-rw-r--r--roles/openshift_examples/files/examples/v3.9/xpaas-templates/datavirt63-extensions-support-s2i.json72
-rw-r--r--roles/openshift_examples/files/examples/v3.9/xpaas-templates/datavirt63-secure-s2i.json72
-rw-r--r--roles/openshift_examples/files/examples/v3.9/xpaas-templates/decisionserver64-amq-s2i.json55
-rw-r--r--roles/openshift_examples/files/examples/v3.9/xpaas-templates/decisionserver64-basic-s2i.json20
-rw-r--r--roles/openshift_examples/files/examples/v3.9/xpaas-templates/decisionserver64-https-s2i.json23
-rw-r--r--roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap64-amq-persistent-s2i.json106
-rw-r--r--roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap64-amq-s2i.json104
-rw-r--r--roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap64-basic-s2i.json62
-rw-r--r--roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap64-https-s2i.json72
-rw-r--r--roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap64-mongodb-persistent-s2i.json74
-rw-r--r--roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap64-mongodb-s2i.json86
-rw-r--r--roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap64-mysql-persistent-s2i.json74
-rw-r--r--roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap64-mysql-s2i.json86
-rw-r--r--roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap64-postgresql-persistent-s2i.json74
-rw-r--r--roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap64-postgresql-s2i.json86
-rw-r--r--roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap64-sso-s2i.json72
-rw-r--r--roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap64-third-party-db-s2i.json74
-rw-r--r--roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap64-tx-recovery-s2i.json605
-rw-r--r--roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap70-amq-persistent-s2i.json106
-rw-r--r--roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap70-amq-s2i.json104
-rw-r--r--roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap70-basic-s2i.json62
-rw-r--r--roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap70-https-s2i.json72
-rw-r--r--roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap70-mongodb-persistent-s2i.json74
-rw-r--r--roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap70-mongodb-s2i.json86
-rw-r--r--roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap70-mysql-persistent-s2i.json74
-rw-r--r--roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap70-mysql-s2i.json86
-rw-r--r--roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap70-postgresql-persistent-s2i.json74
-rw-r--r--roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap70-postgresql-s2i.json86
-rw-r--r--roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap70-sso-s2i.json72
-rw-r--r--roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap70-third-party-db-s2i.json74
-rw-r--r--roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap70-tx-recovery-s2i.json605
-rw-r--r--roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap71-amq-persistent-s2i.json108
-rw-r--r--roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap71-amq-s2i.json106
-rw-r--r--roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap71-basic-s2i.json64
-rw-r--r--roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap71-https-s2i.json72
-rw-r--r--roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap71-mongodb-persistent-s2i.json74
-rw-r--r--roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap71-mongodb-s2i.json86
-rw-r--r--roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap71-mysql-persistent-s2i.json76
-rw-r--r--roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap71-mysql-s2i.json86
-rw-r--r--roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap71-postgresql-persistent-s2i.json78
-rw-r--r--roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap71-postgresql-s2i.json86
-rw-r--r--roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap71-sso-s2i.json98
-rw-r--r--roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap71-third-party-db-s2i.json74
-rw-r--r--roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap71-tx-recovery-s2i.json605
-rw-r--r--roles/openshift_examples/files/examples/v3.9/xpaas-templates/jws31-tomcat7-basic-s2i.json4
-rw-r--r--roles/openshift_examples/files/examples/v3.9/xpaas-templates/jws31-tomcat7-https-s2i.json7
-rw-r--r--roles/openshift_examples/files/examples/v3.9/xpaas-templates/jws31-tomcat7-mongodb-persistent-s2i.json9
-rw-r--r--roles/openshift_examples/files/examples/v3.9/xpaas-templates/jws31-tomcat7-mongodb-s2i.json21
-rw-r--r--roles/openshift_examples/files/examples/v3.9/xpaas-templates/jws31-tomcat7-mysql-persistent-s2i.json9
-rw-r--r--roles/openshift_examples/files/examples/v3.9/xpaas-templates/jws31-tomcat7-mysql-s2i.json21
-rw-r--r--roles/openshift_examples/files/examples/v3.9/xpaas-templates/jws31-tomcat7-postgresql-persistent-s2i.json9
-rw-r--r--roles/openshift_examples/files/examples/v3.9/xpaas-templates/jws31-tomcat7-postgresql-s2i.json21
-rw-r--r--roles/openshift_examples/files/examples/v3.9/xpaas-templates/jws31-tomcat8-basic-s2i.json4
-rw-r--r--roles/openshift_examples/files/examples/v3.9/xpaas-templates/jws31-tomcat8-https-s2i.json7
-rw-r--r--roles/openshift_examples/files/examples/v3.9/xpaas-templates/jws31-tomcat8-mongodb-persistent-s2i.json9
-rw-r--r--roles/openshift_examples/files/examples/v3.9/xpaas-templates/jws31-tomcat8-mongodb-s2i.json21
-rw-r--r--roles/openshift_examples/files/examples/v3.9/xpaas-templates/jws31-tomcat8-mysql-persistent-s2i.json9
-rw-r--r--roles/openshift_examples/files/examples/v3.9/xpaas-templates/jws31-tomcat8-mysql-s2i.json21
-rw-r--r--roles/openshift_examples/files/examples/v3.9/xpaas-templates/jws31-tomcat8-postgresql-persistent-s2i.json9
-rw-r--r--roles/openshift_examples/files/examples/v3.9/xpaas-templates/jws31-tomcat8-postgresql-s2i.json21
-rw-r--r--roles/openshift_examples/files/examples/v3.9/xpaas-templates/karaf2-camel-amq-template.json6
-rw-r--r--roles/openshift_examples/files/examples/v3.9/xpaas-templates/karaf2-camel-log-template.json4
-rw-r--r--roles/openshift_examples/files/examples/v3.9/xpaas-templates/karaf2-camel-rest-sql-template.json4
-rw-r--r--roles/openshift_examples/files/examples/v3.9/xpaas-templates/karaf2-cxf-rest-template.json4
-rw-r--r--roles/openshift_examples/files/examples/v3.9/xpaas-templates/openjdk18-web-basic-s2i.json4
-rw-r--r--roles/openshift_examples/files/examples/v3.9/xpaas-templates/processserver64-amq-mysql-persistent-s2i.json57
-rw-r--r--roles/openshift_examples/files/examples/v3.9/xpaas-templates/processserver64-amq-mysql-s2i.json69
-rw-r--r--roles/openshift_examples/files/examples/v3.9/xpaas-templates/processserver64-amq-postgresql-persistent-s2i.json57
-rw-r--r--roles/openshift_examples/files/examples/v3.9/xpaas-templates/processserver64-amq-postgresql-s2i.json69
-rw-r--r--roles/openshift_examples/files/examples/v3.9/xpaas-templates/processserver64-basic-s2i.json20
-rw-r--r--roles/openshift_examples/files/examples/v3.9/xpaas-templates/processserver64-mysql-persistent-s2i.json25
-rw-r--r--roles/openshift_examples/files/examples/v3.9/xpaas-templates/processserver64-mysql-s2i.json37
-rw-r--r--roles/openshift_examples/files/examples/v3.9/xpaas-templates/processserver64-postgresql-persistent-s2i.json25
-rw-r--r--roles/openshift_examples/files/examples/v3.9/xpaas-templates/processserver64-postgresql-s2i.json37
-rw-r--r--roles/openshift_examples/files/examples/v3.9/xpaas-templates/spring-boot-camel-amq-template.json6
-rw-r--r--roles/openshift_examples/files/examples/v3.9/xpaas-templates/spring-boot-camel-config-template.json4
-rw-r--r--roles/openshift_examples/files/examples/v3.9/xpaas-templates/spring-boot-camel-drools-template.json4
-rw-r--r--roles/openshift_examples/files/examples/v3.9/xpaas-templates/spring-boot-camel-infinispan-template.json4
-rw-r--r--roles/openshift_examples/files/examples/v3.9/xpaas-templates/spring-boot-camel-rest-sql-template.json4
-rw-r--r--roles/openshift_examples/files/examples/v3.9/xpaas-templates/spring-boot-camel-teiid-template.json4
-rw-r--r--roles/openshift_examples/files/examples/v3.9/xpaas-templates/spring-boot-camel-template.json4
-rw-r--r--roles/openshift_examples/files/examples/v3.9/xpaas-templates/spring-boot-camel-xml-template.json4
-rw-r--r--roles/openshift_examples/files/examples/v3.9/xpaas-templates/spring-boot-cxf-jaxrs-template.json4
-rw-r--r--roles/openshift_examples/files/examples/v3.9/xpaas-templates/spring-boot-cxf-jaxws-template.json4
-rw-r--r--roles/openshift_examples/files/examples/v3.9/xpaas-templates/sso71-https.json82
-rw-r--r--roles/openshift_examples/files/examples/v3.9/xpaas-templates/sso71-mysql-persistent.json84
-rw-r--r--roles/openshift_examples/files/examples/v3.9/xpaas-templates/sso71-mysql.json96
-rw-r--r--roles/openshift_examples/files/examples/v3.9/xpaas-templates/sso71-postgresql-persistent.json84
-rw-r--r--roles/openshift_examples/files/examples/v3.9/xpaas-templates/sso71-postgresql.json96
148 files changed, 9167 insertions, 2078 deletions
diff --git a/roles/openshift_examples/files/examples/v3.9/cfme-templates/cfme-backup-job.yaml b/roles/openshift_examples/files/examples/v3.9/cfme-templates/cfme-backup-job.yaml
new file mode 100644
index 000000000..48d1d4e26
--- /dev/null
+++ b/roles/openshift_examples/files/examples/v3.9/cfme-templates/cfme-backup-job.yaml
@@ -0,0 +1,28 @@
+apiVersion: batch/v1
+kind: Job
+metadata:
+ name: cloudforms-backup
+spec:
+ template:
+ metadata:
+ name: cloudforms-backup
+ spec:
+ containers:
+ - name: postgresql
+ image: registry.access.redhat.com/cloudforms46-beta/cfme-openshift-postgresql:latest
+ command:
+ - "/opt/rh/cfme-container-scripts/backup_db"
+ env:
+ - name: DATABASE_URL
+ valueFrom:
+ secretKeyRef:
+ name: cloudforms-secrets
+ key: database-url
+ volumeMounts:
+ - name: cfme-backup-vol
+ mountPath: "/backups"
+ volumes:
+ - name: cfme-backup-vol
+ persistentVolumeClaim:
+ claimName: cloudforms-backup
+ restartPolicy: Never
diff --git a/roles/openshift_examples/files/examples/v3.9/cfme-templates/cfme-backup-pvc.yaml b/roles/openshift_examples/files/examples/v3.9/cfme-templates/cfme-backup-pvc.yaml
new file mode 100644
index 000000000..92598ce82
--- /dev/null
+++ b/roles/openshift_examples/files/examples/v3.9/cfme-templates/cfme-backup-pvc.yaml
@@ -0,0 +1,10 @@
+apiVersion: v1
+kind: PersistentVolumeClaim
+metadata:
+ name: cloudforms-backup
+spec:
+ accessModes:
+ - ReadWriteOnce
+ resources:
+ requests:
+ storage: 15Gi
diff --git a/roles/openshift_examples/files/examples/v3.9/cfme-templates/cfme-pv-backup-example.yaml b/roles/openshift_examples/files/examples/v3.9/cfme-templates/cfme-pv-backup-example.yaml
new file mode 100644
index 000000000..4fe349897
--- /dev/null
+++ b/roles/openshift_examples/files/examples/v3.9/cfme-templates/cfme-pv-backup-example.yaml
@@ -0,0 +1,13 @@
+apiVersion: v1
+kind: PersistentVolume
+metadata:
+ name: cfme-pv03
+spec:
+ capacity:
+ storage: 15Gi
+ accessModes:
+ - ReadWriteOnce
+ nfs:
+ path: "/exports/cfme-pv03"
+ server: "<your-nfs-host-here>"
+ persistentVolumeReclaimPolicy: Retain
diff --git a/roles/openshift_examples/files/examples/v3.9/cfme-templates/cfme-pv-db-example.yaml b/roles/openshift_examples/files/examples/v3.9/cfme-templates/cfme-pv-db-example.yaml
index 250a99b8d..0cdd821b5 100644
--- a/roles/openshift_examples/files/examples/v3.9/cfme-templates/cfme-pv-db-example.yaml
+++ b/roles/openshift_examples/files/examples/v3.9/cfme-templates/cfme-pv-db-example.yaml
@@ -1,13 +1,38 @@
apiVersion: v1
-kind: PersistentVolume
+kind: Template
+labels:
+ template: cloudforms-db-pv
metadata:
- name: cfme-pv01
-spec:
- capacity:
- storage: 15Gi
- accessModes:
+ name: cloudforms-db-pv
+ annotations:
+ description: PV Template for CFME PostgreSQL DB
+ tags: PVS, CFME
+objects:
+- apiVersion: v1
+ kind: PersistentVolume
+ metadata:
+ name: cfme-db
+ spec:
+ capacity:
+ storage: "${PV_SIZE}"
+ accessModes:
- ReadWriteOnce
- nfs:
- path: /exports/cfme-pv01
- server: <your-nfs-host-here>
- persistentVolumeReclaimPolicy: Retain
+ nfs:
+ path: "${BASE_PATH}/cfme-db"
+ server: "${NFS_HOST}"
+ persistentVolumeReclaimPolicy: Retain
+parameters:
+- name: PV_SIZE
+ displayName: PV Size for DB
+ required: true
+ description: The size of the CFME DB PV given in Gi
+ value: 15Gi
+- name: BASE_PATH
+ displayName: Exports Directory Base Path
+ required: true
+ description: The parent directory of your NFS exports
+ value: "/exports"
+- name: NFS_HOST
+ displayName: NFS Server Hostname
+ required: true
+ description: The hostname or IP address of the NFS server
diff --git a/roles/openshift_examples/files/examples/v3.9/cfme-templates/cfme-pv-region-example.yaml b/roles/openshift_examples/files/examples/v3.9/cfme-templates/cfme-pv-region-example.yaml
deleted file mode 100644
index cba9bbe35..000000000
--- a/roles/openshift_examples/files/examples/v3.9/cfme-templates/cfme-pv-region-example.yaml
+++ /dev/null
@@ -1,13 +0,0 @@
-apiVersion: v1
-kind: PersistentVolume
-metadata:
- name: cfme-pv02
-spec:
- capacity:
- storage: 5Gi
- accessModes:
- - ReadWriteOnce
- nfs:
- path: /exports/cfme-pv02
- server: <your-nfs-host-here>
- persistentVolumeReclaimPolicy: Retain
diff --git a/roles/openshift_examples/files/examples/v3.9/cfme-templates/cfme-pv-server-example.yaml b/roles/openshift_examples/files/examples/v3.9/cfme-templates/cfme-pv-server-example.yaml
index c08c21265..527090ae8 100644
--- a/roles/openshift_examples/files/examples/v3.9/cfme-templates/cfme-pv-server-example.yaml
+++ b/roles/openshift_examples/files/examples/v3.9/cfme-templates/cfme-pv-server-example.yaml
@@ -1,13 +1,38 @@
apiVersion: v1
-kind: PersistentVolume
+kind: Template
+labels:
+ template: cloudforms-app-pv
metadata:
- name: cfme-pv03
-spec:
- capacity:
- storage: 5Gi
- accessModes:
+ name: cloudforms-app-pv
+ annotations:
+ description: PV Template for CFME Server
+ tags: PVS, CFME
+objects:
+- apiVersion: v1
+ kind: PersistentVolume
+ metadata:
+ name: cfme-app
+ spec:
+ capacity:
+ storage: "${PV_SIZE}"
+ accessModes:
- ReadWriteOnce
- nfs:
- path: /exports/cfme-pv03
- server: <your-nfs-host-here>
- persistentVolumeReclaimPolicy: Retain
+ nfs:
+ path: "${BASE_PATH}/cfme-app"
+ server: "${NFS_HOST}"
+ persistentVolumeReclaimPolicy: Retain
+parameters:
+- name: PV_SIZE
+ displayName: PV Size for App
+ required: true
+ description: The size of the CFME APP PV given in Gi
+ value: 5Gi
+- name: BASE_PATH
+ displayName: Exports Directory Base Path
+ required: true
+ description: The parent directory of your NFS exports
+ value: "/exports"
+- name: NFS_HOST
+ displayName: NFS Server Hostname
+ required: true
+ description: The hostname or IP address of the NFS server
diff --git a/roles/openshift_examples/files/examples/v3.9/cfme-templates/cfme-restore-job.yaml b/roles/openshift_examples/files/examples/v3.9/cfme-templates/cfme-restore-job.yaml
new file mode 100644
index 000000000..7fd4fc2e1
--- /dev/null
+++ b/roles/openshift_examples/files/examples/v3.9/cfme-templates/cfme-restore-job.yaml
@@ -0,0 +1,35 @@
+apiVersion: batch/v1
+kind: Job
+metadata:
+ name: cloudforms-restore
+spec:
+ template:
+ metadata:
+ name: cloudforms-restore
+ spec:
+ containers:
+ - name: postgresql
+ image: registry.access.redhat.com/cloudforms46-beta/cfme-openshift-postgresql:latest
+ command:
+ - "/opt/rh/cfme-container-scripts/restore_db"
+ env:
+ - name: DATABASE_URL
+ valueFrom:
+ secretKeyRef:
+ name: cloudforms-secrets
+ key: database-url
+ - name: BACKUP_VERSION
+ value: latest
+ volumeMounts:
+ - name: cfme-backup-vol
+ mountPath: "/backups"
+ - name: cfme-prod-vol
+ mountPath: "/restore"
+ volumes:
+ - name: cfme-backup-vol
+ persistentVolumeClaim:
+ claimName: cloudforms-backup
+ - name: cfme-prod-vol
+ persistentVolumeClaim:
+ claimName: cloudforms-postgresql
+ restartPolicy: Never
diff --git a/roles/openshift_examples/files/examples/v3.9/cfme-templates/cfme-scc-sysadmin.yaml b/roles/openshift_examples/files/examples/v3.9/cfme-templates/cfme-scc-sysadmin.yaml
new file mode 100644
index 000000000..d2ece9298
--- /dev/null
+++ b/roles/openshift_examples/files/examples/v3.9/cfme-templates/cfme-scc-sysadmin.yaml
@@ -0,0 +1,38 @@
+allowHostDirVolumePlugin: false
+allowHostIPC: false
+allowHostNetwork: false
+allowHostPID: false
+allowHostPorts: false
+allowPrivilegedContainer: false
+allowedCapabilities:
+apiVersion: v1
+defaultAddCapabilities:
+- SYS_ADMIN
+fsGroup:
+ type: RunAsAny
+groups:
+- system:cluster-admins
+kind: SecurityContextConstraints
+metadata:
+ annotations:
+ kubernetes.io/description: cfme-sysadmin provides all features of the anyuid SCC but allows users to have SYS_ADMIN capabilities. This is the required scc for Pods requiring to run with systemd and the message bus.
+ creationTimestamp:
+ name: cfme-sysadmin
+priority: 10
+readOnlyRootFilesystem: false
+requiredDropCapabilities:
+- MKNOD
+- SYS_CHROOT
+runAsUser:
+ type: RunAsAny
+seLinuxContext:
+ type: MustRunAs
+supplementalGroups:
+ type: RunAsAny
+users:
+volumes:
+- configMap
+- downwardAPI
+- emptyDir
+- persistentVolumeClaim
+- secret
diff --git a/roles/openshift_examples/files/examples/v3.9/cfme-templates/cfme-template-ext-db.yaml b/roles/openshift_examples/files/examples/v3.9/cfme-templates/cfme-template-ext-db.yaml
new file mode 100644
index 000000000..9866c29c3
--- /dev/null
+++ b/roles/openshift_examples/files/examples/v3.9/cfme-templates/cfme-template-ext-db.yaml
@@ -0,0 +1,956 @@
+apiVersion: v1
+kind: Template
+labels:
+ template: cloudforms-ext-db
+metadata:
+ name: cloudforms-ext-db
+ annotations:
+ description: CloudForms appliance with persistent storage using a external DB host
+ tags: instant-app,cloudforms,cfme
+ iconClass: icon-rails
+objects:
+- apiVersion: v1
+ kind: ServiceAccount
+ metadata:
+ name: cfme-orchestrator
+- apiVersion: v1
+ kind: ServiceAccount
+ metadata:
+ name: cfme-anyuid
+- apiVersion: v1
+ kind: ServiceAccount
+ metadata:
+ name: cfme-privileged
+- apiVersion: v1
+ kind: ServiceAccount
+ metadata:
+ name: cfme-httpd
+- apiVersion: v1
+ kind: Secret
+ metadata:
+ name: "${NAME}-secrets"
+ stringData:
+ pg-password: "${DATABASE_PASSWORD}"
+ admin-password: "${APPLICATION_ADMIN_PASSWORD}"
+ database-url: postgresql://${DATABASE_USER}:${DATABASE_PASSWORD}@${DATABASE_SERVICE_NAME}/${DATABASE_NAME}?encoding=utf8&pool=5&wait_timeout=5
+ v2-key: "${V2_KEY}"
+- apiVersion: v1
+ kind: Secret
+ metadata:
+ name: "${ANSIBLE_SERVICE_NAME}-secrets"
+ stringData:
+ rabbit-password: "${ANSIBLE_RABBITMQ_PASSWORD}"
+ secret-key: "${ANSIBLE_SECRET_KEY}"
+ admin-password: "${ANSIBLE_ADMIN_PASSWORD}"
+- apiVersion: v1
+ kind: Service
+ metadata:
+ annotations:
+ description: Exposes and load balances CloudForms pods
+ service.alpha.openshift.io/dependencies: '[{"name":"${DATABASE_SERVICE_NAME}","namespace":"","kind":"Service"},{"name":"${MEMCACHED_SERVICE_NAME}","namespace":"","kind":"Service"}]'
+ name: "${NAME}"
+ spec:
+ clusterIP: None
+ ports:
+ - name: http
+ port: 80
+ protocol: TCP
+ targetPort: 80
+ selector:
+ name: "${NAME}"
+- apiVersion: v1
+ kind: Route
+ metadata:
+ name: "${HTTPD_SERVICE_NAME}"
+ spec:
+ host: "${APPLICATION_DOMAIN}"
+ port:
+ targetPort: http
+ tls:
+ termination: edge
+ insecureEdgeTerminationPolicy: Redirect
+ to:
+ kind: Service
+ name: "${HTTPD_SERVICE_NAME}"
+- apiVersion: apps/v1beta1
+ kind: StatefulSet
+ metadata:
+ name: "${NAME}"
+ annotations:
+ description: Defines how to deploy the CloudForms appliance
+ spec:
+ serviceName: "${NAME}"
+ replicas: "${APPLICATION_REPLICA_COUNT}"
+ template:
+ metadata:
+ labels:
+ name: "${NAME}"
+ name: "${NAME}"
+ spec:
+ containers:
+ - name: cloudforms
+ image: "${FRONTEND_APPLICATION_IMG_NAME}:${FRONTEND_APPLICATION_IMG_TAG}"
+ livenessProbe:
+ exec:
+ command:
+ - pidof
+ - MIQ Server
+ initialDelaySeconds: 480
+ timeoutSeconds: 3
+ readinessProbe:
+ tcpSocket:
+ port: 80
+ initialDelaySeconds: 200
+ timeoutSeconds: 3
+ ports:
+ - containerPort: 80
+ protocol: TCP
+ volumeMounts:
+ - name: "${NAME}-server"
+ mountPath: "/persistent"
+ env:
+ - name: MY_POD_NAMESPACE
+ valueFrom:
+ fieldRef:
+ fieldPath: metadata.namespace
+ - name: APPLICATION_INIT_DELAY
+ value: "${APPLICATION_INIT_DELAY}"
+ - name: DATABASE_REGION
+ value: "${DATABASE_REGION}"
+ - name: DATABASE_URL
+ valueFrom:
+ secretKeyRef:
+ name: "${NAME}-secrets"
+ key: database-url
+ - name: V2_KEY
+ valueFrom:
+ secretKeyRef:
+ name: "${NAME}-secrets"
+ key: v2-key
+ - name: APPLICATION_ADMIN_PASSWORD
+ valueFrom:
+ secretKeyRef:
+ name: "${NAME}-secrets"
+ key: admin-password
+ - name: ANSIBLE_ADMIN_PASSWORD
+ valueFrom:
+ secretKeyRef:
+ name: "${ANSIBLE_SERVICE_NAME}-secrets"
+ key: admin-password
+ resources:
+ requests:
+ memory: "${APPLICATION_MEM_REQ}"
+ cpu: "${APPLICATION_CPU_REQ}"
+ limits:
+ memory: "${APPLICATION_MEM_LIMIT}"
+ lifecycle:
+ preStop:
+ exec:
+ command:
+ - "/opt/rh/cfme-container-scripts/sync-pv-data"
+ serviceAccount: cfme-orchestrator
+ serviceAccountName: cfme-orchestrator
+ terminationGracePeriodSeconds: 90
+ volumeClaimTemplates:
+ - metadata:
+ name: "${NAME}-server"
+ annotations:
+ spec:
+ accessModes:
+ - ReadWriteOnce
+ resources:
+ requests:
+ storage: "${APPLICATION_VOLUME_CAPACITY}"
+- apiVersion: v1
+ kind: Service
+ metadata:
+ annotations:
+ description: Headless service for CloudForms backend pods
+ name: "${NAME}-backend"
+ spec:
+ clusterIP: None
+ selector:
+ name: "${NAME}-backend"
+- apiVersion: apps/v1beta1
+ kind: StatefulSet
+ metadata:
+ name: "${NAME}-backend"
+ annotations:
+ description: Defines how to deploy the CloudForms appliance
+ spec:
+ serviceName: "${NAME}-backend"
+ replicas: 0
+ template:
+ metadata:
+ labels:
+ name: "${NAME}-backend"
+ name: "${NAME}-backend"
+ spec:
+ containers:
+ - name: cloudforms
+ image: "${BACKEND_APPLICATION_IMG_NAME}:${BACKEND_APPLICATION_IMG_TAG}"
+ livenessProbe:
+ exec:
+ command:
+ - pidof
+ - MIQ Server
+ initialDelaySeconds: 480
+ timeoutSeconds: 3
+ volumeMounts:
+ - name: "${NAME}-server"
+ mountPath: "/persistent"
+ env:
+ - name: APPLICATION_INIT_DELAY
+ value: "${APPLICATION_INIT_DELAY}"
+ - name: DATABASE_URL
+ valueFrom:
+ secretKeyRef:
+ name: "${NAME}-secrets"
+ key: database-url
+ - name: MIQ_SERVER_DEFAULT_ROLES
+ value: database_operations,event,reporting,scheduler,smartstate,ems_operations,ems_inventory,automate
+ - name: FRONTEND_SERVICE_NAME
+ value: "${NAME}"
+ - name: V2_KEY
+ valueFrom:
+ secretKeyRef:
+ name: "${NAME}-secrets"
+ key: v2-key
+ - name: ANSIBLE_ADMIN_PASSWORD
+ valueFrom:
+ secretKeyRef:
+ name: "${ANSIBLE_SERVICE_NAME}-secrets"
+ key: admin-password
+ resources:
+ requests:
+ memory: "${APPLICATION_MEM_REQ}"
+ cpu: "${APPLICATION_CPU_REQ}"
+ limits:
+ memory: "${APPLICATION_MEM_LIMIT}"
+ lifecycle:
+ preStop:
+ exec:
+ command:
+ - "/opt/rh/cfme-container-scripts/sync-pv-data"
+ serviceAccount: cfme-orchestrator
+ serviceAccountName: cfme-orchestrator
+ terminationGracePeriodSeconds: 90
+ volumeClaimTemplates:
+ - metadata:
+ name: "${NAME}-server"
+ annotations:
+ spec:
+ accessModes:
+ - ReadWriteOnce
+ resources:
+ requests:
+ storage: "${APPLICATION_VOLUME_CAPACITY}"
+- apiVersion: v1
+ kind: Service
+ metadata:
+ name: "${MEMCACHED_SERVICE_NAME}"
+ annotations:
+ description: Exposes the memcached server
+ spec:
+ ports:
+ - name: memcached
+ port: 11211
+ targetPort: 11211
+ selector:
+ name: "${MEMCACHED_SERVICE_NAME}"
+- apiVersion: v1
+ kind: DeploymentConfig
+ metadata:
+ name: "${MEMCACHED_SERVICE_NAME}"
+ annotations:
+ description: Defines how to deploy memcached
+ spec:
+ strategy:
+ type: Recreate
+ triggers:
+ - type: ConfigChange
+ replicas: 1
+ selector:
+ name: "${MEMCACHED_SERVICE_NAME}"
+ template:
+ metadata:
+ name: "${MEMCACHED_SERVICE_NAME}"
+ labels:
+ name: "${MEMCACHED_SERVICE_NAME}"
+ spec:
+ volumes: []
+ containers:
+ - name: memcached
+ image: "${MEMCACHED_IMG_NAME}:${MEMCACHED_IMG_TAG}"
+ ports:
+ - containerPort: 11211
+ readinessProbe:
+ timeoutSeconds: 1
+ initialDelaySeconds: 5
+ tcpSocket:
+ port: 11211
+ livenessProbe:
+ timeoutSeconds: 1
+ initialDelaySeconds: 30
+ tcpSocket:
+ port: 11211
+ volumeMounts: []
+ env:
+ - name: MEMCACHED_MAX_MEMORY
+ value: "${MEMCACHED_MAX_MEMORY}"
+ - name: MEMCACHED_MAX_CONNECTIONS
+ value: "${MEMCACHED_MAX_CONNECTIONS}"
+ - name: MEMCACHED_SLAB_PAGE_SIZE
+ value: "${MEMCACHED_SLAB_PAGE_SIZE}"
+ resources:
+ requests:
+ memory: "${MEMCACHED_MEM_REQ}"
+ cpu: "${MEMCACHED_CPU_REQ}"
+ limits:
+ memory: "${MEMCACHED_MEM_LIMIT}"
+- apiVersion: v1
+ kind: Service
+ metadata:
+ name: "${DATABASE_SERVICE_NAME}"
+ annotations:
+ description: Remote database service
+ spec:
+ ports:
+ - name: postgresql
+ port: 5432
+ targetPort: "${{DATABASE_PORT}}"
+ selector: {}
+- apiVersion: v1
+ kind: Endpoints
+ metadata:
+ name: "${DATABASE_SERVICE_NAME}"
+ subsets:
+ - addresses:
+ - ip: "${DATABASE_IP}"
+ ports:
+ - port: "${{DATABASE_PORT}}"
+ name: postgresql
+- apiVersion: v1
+ kind: Service
+ metadata:
+ annotations:
+ description: Exposes and load balances Ansible pods
+ service.alpha.openshift.io/dependencies: '[{"name":"${DATABASE_SERVICE_NAME}","namespace":"","kind":"Service"}]'
+ name: "${ANSIBLE_SERVICE_NAME}"
+ spec:
+ ports:
+ - name: http
+ port: 80
+ protocol: TCP
+ targetPort: 80
+ - name: https
+ port: 443
+ protocol: TCP
+ targetPort: 443
+ selector:
+ name: "${ANSIBLE_SERVICE_NAME}"
+- apiVersion: v1
+ kind: DeploymentConfig
+ metadata:
+ name: "${ANSIBLE_SERVICE_NAME}"
+ annotations:
+ description: Defines how to deploy the Ansible appliance
+ spec:
+ strategy:
+ type: Recreate
+ serviceName: "${ANSIBLE_SERVICE_NAME}"
+ replicas: 0
+ template:
+ metadata:
+ labels:
+ name: "${ANSIBLE_SERVICE_NAME}"
+ name: "${ANSIBLE_SERVICE_NAME}"
+ spec:
+ containers:
+ - name: ansible
+ image: "${ANSIBLE_IMG_NAME}:${ANSIBLE_IMG_TAG}"
+ livenessProbe:
+ tcpSocket:
+ port: 443
+ initialDelaySeconds: 480
+ timeoutSeconds: 3
+ readinessProbe:
+ httpGet:
+ path: "/"
+ port: 443
+ scheme: HTTPS
+ initialDelaySeconds: 200
+ timeoutSeconds: 3
+ ports:
+ - containerPort: 80
+ protocol: TCP
+ - containerPort: 443
+ protocol: TCP
+ securityContext:
+ privileged: true
+ env:
+ - name: ADMIN_PASSWORD
+ valueFrom:
+ secretKeyRef:
+ name: "${ANSIBLE_SERVICE_NAME}-secrets"
+ key: admin-password
+ - name: RABBITMQ_USER_NAME
+ value: "${ANSIBLE_RABBITMQ_USER_NAME}"
+ - name: RABBITMQ_PASSWORD
+ valueFrom:
+ secretKeyRef:
+ name: "${ANSIBLE_SERVICE_NAME}-secrets"
+ key: rabbit-password
+ - name: ANSIBLE_SECRET_KEY
+ valueFrom:
+ secretKeyRef:
+ name: "${ANSIBLE_SERVICE_NAME}-secrets"
+ key: secret-key
+ - name: DATABASE_SERVICE_NAME
+ value: "${DATABASE_SERVICE_NAME}"
+ - name: POSTGRESQL_USER
+ value: "${DATABASE_USER}"
+ - name: POSTGRESQL_PASSWORD
+ valueFrom:
+ secretKeyRef:
+ name: "${NAME}-secrets"
+ key: pg-password
+ - name: POSTGRESQL_DATABASE
+ value: "${ANSIBLE_DATABASE_NAME}"
+ resources:
+ requests:
+ memory: "${ANSIBLE_MEM_REQ}"
+ cpu: "${ANSIBLE_CPU_REQ}"
+ limits:
+ memory: "${ANSIBLE_MEM_LIMIT}"
+ serviceAccount: cfme-privileged
+ serviceAccountName: cfme-privileged
+- apiVersion: v1
+ kind: ConfigMap
+ metadata:
+ name: "${HTTPD_SERVICE_NAME}-configs"
+ data:
+ application.conf: |
+ # Timeout: The number of seconds before receives and sends time out.
+ Timeout 120
+
+ RewriteEngine On
+ Options SymLinksIfOwnerMatch
+
+ <VirtualHost *:80>
+ KeepAlive on
+ # Without ServerName mod_auth_mellon compares against http:// and not https:// from the IdP
+ ServerName https://%{REQUEST_HOST}
+
+ ProxyPreserveHost on
+
+ RewriteCond %{REQUEST_URI} ^/ws [NC]
+ RewriteCond %{HTTP:UPGRADE} ^websocket$ [NC]
+ RewriteCond %{HTTP:CONNECTION} ^Upgrade$ [NC]
+ RewriteRule .* ws://${NAME}%{REQUEST_URI} [P,QSA,L]
+
+ # For httpd, some ErrorDocuments must by served by the httpd pod
+ RewriteCond %{REQUEST_URI} !^/proxy_pages
+
+ # For SAML /saml2 is only served by mod_auth_mellon in the httpd pod
+ RewriteCond %{REQUEST_URI} !^/saml2
+ RewriteRule ^/ http://${NAME}%{REQUEST_URI} [P,QSA,L]
+ ProxyPassReverse / http://${NAME}/
+
+ # Ensures httpd stdout/stderr are seen by docker logs.
+ ErrorLog "| /usr/bin/tee /proc/1/fd/2 /var/log/httpd/error_log"
+ CustomLog "| /usr/bin/tee /proc/1/fd/1 /var/log/httpd/access_log" common
+ </VirtualHost>
+ authentication.conf: |
+ # Load appropriate authentication configuration files
+ #
+ Include "conf.d/configuration-${HTTPD_AUTH_TYPE}-auth"
+ configuration-internal-auth: |
+ # Internal authentication
+ #
+ configuration-external-auth: |
+ Include "conf.d/external-auth-load-modules-conf"
+
+ <Location /dashboard/kerberos_authenticate>
+ AuthType Kerberos
+ AuthName "Kerberos Login"
+ KrbMethodNegotiate On
+ KrbMethodK5Passwd Off
+ KrbAuthRealms ${HTTPD_AUTH_KERBEROS_REALMS}
+ Krb5KeyTab /etc/http.keytab
+ KrbServiceName Any
+ Require pam-account httpd-auth
+
+ ErrorDocument 401 /proxy_pages/invalid_sso_credentials.js
+ </Location>
+
+ Include "conf.d/external-auth-login-form-conf"
+ Include "conf.d/external-auth-application-api-conf"
+ Include "conf.d/external-auth-lookup-user-details-conf"
+ Include "conf.d/external-auth-remote-user-conf"
+ configuration-active-directory-auth: |
+ Include "conf.d/external-auth-load-modules-conf"
+
+ <Location /dashboard/kerberos_authenticate>
+ AuthType Kerberos
+ AuthName "Kerberos Login"
+ KrbMethodNegotiate On
+ KrbMethodK5Passwd Off
+ KrbAuthRealms ${HTTPD_AUTH_KERBEROS_REALMS}
+ Krb5KeyTab /etc/krb5.keytab
+ KrbServiceName Any
+ Require pam-account httpd-auth
+
+ ErrorDocument 401 /proxy_pages/invalid_sso_credentials.js
+ </Location>
+
+ Include "conf.d/external-auth-login-form-conf"
+ Include "conf.d/external-auth-application-api-conf"
+ Include "conf.d/external-auth-lookup-user-details-conf"
+ Include "conf.d/external-auth-remote-user-conf"
+ configuration-saml-auth: |
+ LoadModule auth_mellon_module modules/mod_auth_mellon.so
+
+ <Location />
+ MellonEnable "info"
+
+ MellonIdPMetadataFile "/etc/httpd/saml2/idp-metadata.xml"
+
+ MellonSPPrivateKeyFile "/etc/httpd/saml2/sp-key.key"
+ MellonSPCertFile "/etc/httpd/saml2/sp-cert.cert"
+ MellonSPMetadataFile "/etc/httpd/saml2/sp-metadata.xml"
+
+ MellonVariable "sp-cookie"
+ MellonSecureCookie On
+ MellonCookiePath "/"
+
+ MellonIdP "IDP"
+
+ MellonEndpointPath "/saml2"
+
+ MellonUser username
+ MellonMergeEnvVars On
+
+ MellonSetEnvNoPrefix "REMOTE_USER" username
+ MellonSetEnvNoPrefix "REMOTE_USER_EMAIL" email
+ MellonSetEnvNoPrefix "REMOTE_USER_FIRSTNAME" firstname
+ MellonSetEnvNoPrefix "REMOTE_USER_LASTNAME" lastname
+ MellonSetEnvNoPrefix "REMOTE_USER_FULLNAME" fullname
+ MellonSetEnvNoPrefix "REMOTE_USER_GROUPS" groups
+ </Location>
+
+ <Location /saml_login>
+ AuthType "Mellon"
+ MellonEnable "auth"
+ Require valid-user
+ </Location>
+
+ Include "conf.d/external-auth-remote-user-conf"
+ external-auth-load-modules-conf: |
+ LoadModule authnz_pam_module modules/mod_authnz_pam.so
+ LoadModule intercept_form_submit_module modules/mod_intercept_form_submit.so
+ LoadModule lookup_identity_module modules/mod_lookup_identity.so
+ LoadModule auth_kerb_module modules/mod_auth_kerb.so
+ external-auth-login-form-conf: |
+ <Location /dashboard/external_authenticate>
+ InterceptFormPAMService httpd-auth
+ InterceptFormLogin user_name
+ InterceptFormPassword user_password
+ InterceptFormLoginSkip admin
+ InterceptFormClearRemoteUserForSkipped on
+ </Location>
+ external-auth-application-api-conf: |
+ <LocationMatch ^/api>
+ SetEnvIf Authorization '^Basic +YWRtaW46' let_admin_in
+ SetEnvIf X-Auth-Token '^.+$' let_api_token_in
+ SetEnvIf X-MIQ-Token '^.+$' let_sys_token_in
+
+ AuthType Basic
+ AuthName "External Authentication (httpd) for API"
+ AuthBasicProvider PAM
+
+ AuthPAMService httpd-auth
+ Require valid-user
+ Order Allow,Deny
+ Allow from env=let_admin_in
+ Allow from env=let_api_token_in
+ Allow from env=let_sys_token_in
+ Satisfy Any
+ </LocationMatch>
+ external-auth-lookup-user-details-conf: |
+ <LocationMatch ^/dashboard/external_authenticate$|^/dashboard/kerberos_authenticate$|^/api>
+ LookupUserAttr mail REMOTE_USER_EMAIL
+ LookupUserAttr givenname REMOTE_USER_FIRSTNAME
+ LookupUserAttr sn REMOTE_USER_LASTNAME
+ LookupUserAttr displayname REMOTE_USER_FULLNAME
+ LookupUserAttr domainname REMOTE_USER_DOMAIN
+
+ LookupUserGroups REMOTE_USER_GROUPS ":"
+ LookupDbusTimeout 5000
+ </LocationMatch>
+ external-auth-remote-user-conf: |
+ RequestHeader unset X_REMOTE_USER
+
+ RequestHeader set X_REMOTE_USER %{REMOTE_USER}e env=REMOTE_USER
+ RequestHeader set X_EXTERNAL_AUTH_ERROR %{EXTERNAL_AUTH_ERROR}e env=EXTERNAL_AUTH_ERROR
+ RequestHeader set X_REMOTE_USER_EMAIL %{REMOTE_USER_EMAIL}e env=REMOTE_USER_EMAIL
+ RequestHeader set X_REMOTE_USER_FIRSTNAME %{REMOTE_USER_FIRSTNAME}e env=REMOTE_USER_FIRSTNAME
+ RequestHeader set X_REMOTE_USER_LASTNAME %{REMOTE_USER_LASTNAME}e env=REMOTE_USER_LASTNAME
+ RequestHeader set X_REMOTE_USER_FULLNAME %{REMOTE_USER_FULLNAME}e env=REMOTE_USER_FULLNAME
+ RequestHeader set X_REMOTE_USER_GROUPS %{REMOTE_USER_GROUPS}e env=REMOTE_USER_GROUPS
+ RequestHeader set X_REMOTE_USER_DOMAIN %{REMOTE_USER_DOMAIN}e env=REMOTE_USER_DOMAIN
+- apiVersion: v1
+ kind: ConfigMap
+ metadata:
+ name: "${HTTPD_SERVICE_NAME}-auth-configs"
+ data:
+ auth-type: internal
+ auth-kerberos-realms: undefined
+ auth-configuration.conf: |
+ # External Authentication Configuration File
+ #
+ # For details on usage please see https://github.com/ManageIQ/manageiq-pods/blob/master/README.md#configuring-external-authentication
+- apiVersion: v1
+ kind: Service
+ metadata:
+ name: "${HTTPD_SERVICE_NAME}"
+ annotations:
+ description: Exposes the httpd server
+ service.alpha.openshift.io/dependencies: '[{"name":"${NAME}","namespace":"","kind":"Service"}]'
+ spec:
+ ports:
+ - name: http
+ port: 80
+ targetPort: 80
+ selector:
+ name: httpd
+- apiVersion: v1
+ kind: Service
+ metadata:
+ name: "${HTTPD_DBUS_API_SERVICE_NAME}"
+ annotations:
+ description: Exposes the httpd server dbus api
+ service.alpha.openshift.io/dependencies: '[{"name":"${NAME}","namespace":"","kind":"Service"}]'
+ spec:
+ ports:
+ - name: http-dbus-api
+ port: 8080
+ targetPort: 8080
+ selector:
+ name: httpd
+- apiVersion: v1
+ kind: DeploymentConfig
+ metadata:
+ name: "${HTTPD_SERVICE_NAME}"
+ annotations:
+ description: Defines how to deploy httpd
+ spec:
+ strategy:
+ type: Recreate
+ recreateParams:
+ timeoutSeconds: 1200
+ triggers:
+ - type: ConfigChange
+ replicas: 1
+ selector:
+ name: "${HTTPD_SERVICE_NAME}"
+ template:
+ metadata:
+ name: "${HTTPD_SERVICE_NAME}"
+ labels:
+ name: "${HTTPD_SERVICE_NAME}"
+ spec:
+ volumes:
+ - name: httpd-config
+ configMap:
+ name: "${HTTPD_SERVICE_NAME}-configs"
+ - name: httpd-auth-config
+ configMap:
+ name: "${HTTPD_SERVICE_NAME}-auth-configs"
+ containers:
+ - name: httpd
+ image: "${HTTPD_IMG_NAME}:${HTTPD_IMG_TAG}"
+ ports:
+ - containerPort: 80
+ protocol: TCP
+ - containerPort: 8080
+ protocol: TCP
+ livenessProbe:
+ exec:
+ command:
+ - pidof
+ - httpd
+ initialDelaySeconds: 15
+ timeoutSeconds: 3
+ readinessProbe:
+ tcpSocket:
+ port: 80
+ initialDelaySeconds: 10
+ timeoutSeconds: 3
+ volumeMounts:
+ - name: httpd-config
+ mountPath: "${HTTPD_CONFIG_DIR}"
+ - name: httpd-auth-config
+ mountPath: "${HTTPD_AUTH_CONFIG_DIR}"
+ resources:
+ requests:
+ memory: "${HTTPD_MEM_REQ}"
+ cpu: "${HTTPD_CPU_REQ}"
+ limits:
+ memory: "${HTTPD_MEM_LIMIT}"
+ env:
+ - name: HTTPD_AUTH_TYPE
+ valueFrom:
+ configMapKeyRef:
+ name: "${HTTPD_SERVICE_NAME}-auth-configs"
+ key: auth-type
+ - name: HTTPD_AUTH_KERBEROS_REALMS
+ valueFrom:
+ configMapKeyRef:
+ name: "${HTTPD_SERVICE_NAME}-auth-configs"
+ key: auth-kerberos-realms
+ lifecycle:
+ postStart:
+ exec:
+ command:
+ - "/usr/bin/save-container-environment"
+ serviceAccount: cfme-httpd
+ serviceAccountName: cfme-httpd
+parameters:
+- name: NAME
+ displayName: Name
+ required: true
+ description: The name assigned to all of the frontend objects defined in this template.
+ value: cloudforms
+- name: V2_KEY
+ displayName: CloudForms Encryption Key
+ required: true
+ description: Encryption Key for CloudForms Passwords
+ from: "[a-zA-Z0-9]{43}"
+ generate: expression
+- name: DATABASE_SERVICE_NAME
+ displayName: PostgreSQL Service Name
+ required: true
+ description: The name of the OpenShift Service exposed for the PostgreSQL container.
+ value: postgresql
+- name: DATABASE_USER
+ displayName: PostgreSQL User
+ required: true
+ description: PostgreSQL user that will access the database.
+ value: root
+- name: DATABASE_PASSWORD
+ displayName: PostgreSQL Password
+ required: true
+ description: Password for the PostgreSQL user.
+ from: "[a-zA-Z0-9]{8}"
+ generate: expression
+- name: DATABASE_IP
+ displayName: PostgreSQL Server IP
+ required: true
+ description: PostgreSQL external server IP used to configure service.
+ value: ''
+- name: DATABASE_PORT
+ displayName: PostgreSQL Server Port
+ required: true
+ description: PostgreSQL external server port used to configure service.
+ value: '5432'
+- name: DATABASE_NAME
+ required: true
+ displayName: PostgreSQL Database Name
+ description: Name of the PostgreSQL database accessed.
+ value: vmdb_production
+- name: DATABASE_REGION
+ required: true
+ displayName: Application Database Region
+ description: Database region that will be used for application.
+ value: '0'
+- name: APPLICATION_ADMIN_PASSWORD
+ displayName: Application Admin Password
+ required: true
+ description: Admin password that will be set on the application.
+ value: smartvm
+- name: ANSIBLE_DATABASE_NAME
+ displayName: Ansible PostgreSQL database name
+ required: true
+ description: The database to be used by the Ansible continer
+ value: awx
+- name: MEMCACHED_SERVICE_NAME
+ required: true
+ displayName: Memcached Service Name
+ description: The name of the OpenShift Service exposed for the Memcached container.
+ value: memcached
+- name: MEMCACHED_MAX_MEMORY
+ displayName: Memcached Max Memory
+ description: Memcached maximum memory for memcached object storage in MB.
+ value: '64'
+- name: MEMCACHED_MAX_CONNECTIONS
+ displayName: Memcached Max Connections
+ description: Memcached maximum number of connections allowed.
+ value: '1024'
+- name: MEMCACHED_SLAB_PAGE_SIZE
+ displayName: Memcached Slab Page Size
+ description: Memcached size of each slab page.
+ value: 1m
+- name: ANSIBLE_SERVICE_NAME
+ displayName: Ansible Service Name
+ description: The name of the OpenShift Service exposed for the Ansible container.
+ value: ansible
+- name: ANSIBLE_ADMIN_PASSWORD
+ displayName: Ansible admin User password
+ required: true
+ description: The password for the Ansible container admin user
+ from: "[a-zA-Z0-9]{32}"
+ generate: expression
+- name: ANSIBLE_SECRET_KEY
+ displayName: Ansible Secret Key
+ required: true
+ description: Encryption key for the Ansible container
+ from: "[a-f0-9]{32}"
+ generate: expression
+- name: ANSIBLE_RABBITMQ_USER_NAME
+ displayName: RabbitMQ Username
+ required: true
+ description: Username for the Ansible RabbitMQ Server
+ value: ansible
+- name: ANSIBLE_RABBITMQ_PASSWORD
+ displayName: RabbitMQ Server Password
+ required: true
+ description: Password for the Ansible RabbitMQ Server
+ from: "[a-zA-Z0-9]{32}"
+ generate: expression
+- name: APPLICATION_CPU_REQ
+ displayName: Application Min CPU Requested
+ required: true
+ description: Minimum amount of CPU time the Application container will need (expressed in millicores).
+ value: 1000m
+- name: MEMCACHED_CPU_REQ
+ displayName: Memcached Min CPU Requested
+ required: true
+ description: Minimum amount of CPU time the Memcached container will need (expressed in millicores).
+ value: 200m
+- name: ANSIBLE_CPU_REQ
+ displayName: Ansible Min CPU Requested
+ required: true
+ description: Minimum amount of CPU time the Ansible container will need (expressed in millicores).
+ value: 1000m
+- name: APPLICATION_MEM_REQ
+ displayName: Application Min RAM Requested
+ required: true
+ description: Minimum amount of memory the Application container will need.
+ value: 6144Mi
+- name: MEMCACHED_MEM_REQ
+ displayName: Memcached Min RAM Requested
+ required: true
+ description: Minimum amount of memory the Memcached container will need.
+ value: 64Mi
+- name: ANSIBLE_MEM_REQ
+ displayName: Ansible Min RAM Requested
+ required: true
+ description: Minimum amount of memory the Ansible container will need.
+ value: 2048Mi
+- name: APPLICATION_MEM_LIMIT
+ displayName: Application Max RAM Limit
+ required: true
+ description: Maximum amount of memory the Application container can consume.
+ value: 16384Mi
+- name: MEMCACHED_MEM_LIMIT
+ displayName: Memcached Max RAM Limit
+ required: true
+ description: Maximum amount of memory the Memcached container can consume.
+ value: 256Mi
+- name: ANSIBLE_MEM_LIMIT
+ displayName: Ansible Max RAM Limit
+ required: true
+ description: Maximum amount of memory the Ansible container can consume.
+ value: 8096Mi
+- name: MEMCACHED_IMG_NAME
+ displayName: Memcached Image Name
+ description: This is the Memcached image name requested to deploy.
+ value: registry.access.redhat.com/cloudforms46-beta/cfme-openshift-memcached
+- name: MEMCACHED_IMG_TAG
+ displayName: Memcached Image Tag
+ description: This is the Memcached image tag/version requested to deploy.
+ value: latest
+- name: FRONTEND_APPLICATION_IMG_NAME
+ displayName: Frontend Application Image Name
+ description: This is the Frontend Application image name requested to deploy.
+ value: registry.access.redhat.com/cloudforms46-beta/cfme-openshift-app-ui
+- name: BACKEND_APPLICATION_IMG_NAME
+ displayName: Backend Application Image Name
+ description: This is the Backend Application image name requested to deploy.
+ value: registry.access.redhat.com/cloudforms46-beta/cfme-openshift-app
+- name: FRONTEND_APPLICATION_IMG_TAG
+ displayName: Front end Application Image Tag
+ description: This is the CloudForms Frontend Application image tag/version requested to deploy.
+ value: latest
+- name: BACKEND_APPLICATION_IMG_TAG
+ displayName: Back end Application Image Tag
+ description: This is the CloudForms Backend Application image tag/version requested to deploy.
+ value: latest
+- name: ANSIBLE_IMG_NAME
+ displayName: Ansible Image Name
+ description: This is the Ansible image name requested to deploy.
+ value: registry.access.redhat.com/cloudforms46-beta/cfme-openshift-embedded-ansible
+- name: ANSIBLE_IMG_TAG
+ displayName: Ansible Image Tag
+ description: This is the Ansible image tag/version requested to deploy.
+ value: latest
+- name: APPLICATION_DOMAIN
+ displayName: Application Hostname
+ description: The exposed hostname that will route to the application service, if left blank a value will be defaulted.
+ value: ''
+- name: APPLICATION_REPLICA_COUNT
+ displayName: Application Replica Count
+ description: This is the number of Application replicas requested to deploy.
+ value: '1'
+- name: APPLICATION_INIT_DELAY
+ displayName: Application Init Delay
+ required: true
+ description: Delay in seconds before we attempt to initialize the application.
+ value: '15'
+- name: APPLICATION_VOLUME_CAPACITY
+ displayName: Application Volume Capacity
+ required: true
+ description: Volume space available for application data.
+ value: 5Gi
+- name: HTTPD_SERVICE_NAME
+ required: true
+ displayName: Apache httpd Service Name
+ description: The name of the OpenShift Service exposed for the httpd container.
+ value: httpd
+- name: HTTPD_DBUS_API_SERVICE_NAME
+ required: true
+ displayName: Apache httpd DBus API Service Name
+ description: The name of httpd dbus api service.
+ value: httpd-dbus-api
+- name: HTTPD_IMG_NAME
+ displayName: Apache httpd Image Name
+ description: This is the httpd image name requested to deploy.
+ value: registry.access.redhat.com/cloudforms46-beta/cfme-openshift-httpd
+- name: HTTPD_IMG_TAG
+ displayName: Apache httpd Image Tag
+ description: This is the httpd image tag/version requested to deploy.
+ value: latest
+- name: HTTPD_CONFIG_DIR
+ displayName: Apache httpd Configuration Directory
+ description: Directory used to store the Apache configuration files.
+ value: "/etc/httpd/conf.d"
+- name: HTTPD_AUTH_CONFIG_DIR
+ displayName: External Authentication Configuration Directory
+ description: Directory used to store the external authentication configuration files.
+ value: "/etc/httpd/auth-conf.d"
+- name: HTTPD_CPU_REQ
+ displayName: Apache httpd Min CPU Requested
+ required: true
+ description: Minimum amount of CPU time the httpd container will need (expressed in millicores).
+ value: 500m
+- name: HTTPD_MEM_REQ
+ displayName: Apache httpd Min RAM Requested
+ required: true
+ description: Minimum amount of memory the httpd container will need.
+ value: 512Mi
+- name: HTTPD_MEM_LIMIT
+ displayName: Apache httpd Max RAM Limit
+ required: true
+ description: Maximum amount of memory the httpd container can consume.
+ value: 8192Mi
diff --git a/roles/openshift_examples/files/examples/v3.9/cfme-templates/cfme-template.yaml b/roles/openshift_examples/files/examples/v3.9/cfme-templates/cfme-template.yaml
index 3bc6c5813..5c757b6c2 100644
--- a/roles/openshift_examples/files/examples/v3.9/cfme-templates/cfme-template.yaml
+++ b/roles/openshift_examples/files/examples/v3.9/cfme-templates/cfme-template.yaml
@@ -5,17 +5,308 @@ labels:
metadata:
name: cloudforms
annotations:
- description: "CloudForms appliance with persistent storage"
- tags: "instant-app,cloudforms,cfme"
- iconClass: "icon-rails"
+ description: CloudForms appliance with persistent storage
+ tags: instant-app,cloudforms,cfme
+ iconClass: icon-rails
objects:
- apiVersion: v1
+ kind: ServiceAccount
+ metadata:
+ name: cfme-orchestrator
+- apiVersion: v1
+ kind: ServiceAccount
+ metadata:
+ name: cfme-anyuid
+- apiVersion: v1
+ kind: ServiceAccount
+ metadata:
+ name: cfme-privileged
+- apiVersion: v1
+ kind: ServiceAccount
+ metadata:
+ name: cfme-httpd
+- apiVersion: v1
+ kind: Secret
+ metadata:
+ name: "${NAME}-secrets"
+ stringData:
+ pg-password: "${DATABASE_PASSWORD}"
+ admin-password: "${APPLICATION_ADMIN_PASSWORD}"
+ database-url: postgresql://${DATABASE_USER}:${DATABASE_PASSWORD}@${DATABASE_SERVICE_NAME}/${DATABASE_NAME}?encoding=utf8&pool=5&wait_timeout=5
+ v2-key: "${V2_KEY}"
+- apiVersion: v1
+ kind: Secret
+ metadata:
+ name: "${ANSIBLE_SERVICE_NAME}-secrets"
+ stringData:
+ rabbit-password: "${ANSIBLE_RABBITMQ_PASSWORD}"
+ secret-key: "${ANSIBLE_SECRET_KEY}"
+ admin-password: "${ANSIBLE_ADMIN_PASSWORD}"
+- apiVersion: v1
+ kind: ConfigMap
+ metadata:
+ name: "${DATABASE_SERVICE_NAME}-configs"
+ data:
+ 01_miq_overrides.conf: |
+ #------------------------------------------------------------------------------
+ # CONNECTIONS AND AUTHENTICATION
+ #------------------------------------------------------------------------------
+
+ tcp_keepalives_count = 9
+ tcp_keepalives_idle = 3
+ tcp_keepalives_interval = 75
+
+ #------------------------------------------------------------------------------
+ # RESOURCE USAGE (except WAL)
+ #------------------------------------------------------------------------------
+
+ shared_preload_libraries = 'pglogical,repmgr_funcs'
+ max_worker_processes = 10
+
+ #------------------------------------------------------------------------------
+ # WRITE AHEAD LOG
+ #------------------------------------------------------------------------------
+
+ wal_level = 'logical'
+ wal_log_hints = on
+ wal_buffers = 16MB
+ checkpoint_completion_target = 0.9
+
+ #------------------------------------------------------------------------------
+ # REPLICATION
+ #------------------------------------------------------------------------------
+
+ max_wal_senders = 10
+ wal_sender_timeout = 0
+ max_replication_slots = 10
+ hot_standby = on
+
+ #------------------------------------------------------------------------------
+ # ERROR REPORTING AND LOGGING
+ #------------------------------------------------------------------------------
+
+ log_filename = 'postgresql.log'
+ log_rotation_age = 0
+ log_min_duration_statement = 5000
+ log_connections = on
+ log_disconnections = on
+ log_line_prefix = '%t:%r:%c:%u@%d:[%p]:'
+ log_lock_waits = on
+
+ #------------------------------------------------------------------------------
+ # AUTOVACUUM PARAMETERS
+ #------------------------------------------------------------------------------
+
+ log_autovacuum_min_duration = 0
+ autovacuum_naptime = 5min
+ autovacuum_vacuum_threshold = 500
+ autovacuum_analyze_threshold = 500
+ autovacuum_vacuum_scale_factor = 0.05
+
+ #------------------------------------------------------------------------------
+ # LOCK MANAGEMENT
+ #------------------------------------------------------------------------------
+
+ deadlock_timeout = 5s
+
+ #------------------------------------------------------------------------------
+ # VERSION/PLATFORM COMPATIBILITY
+ #------------------------------------------------------------------------------
+
+ escape_string_warning = off
+ standard_conforming_strings = off
+- apiVersion: v1
+ kind: ConfigMap
+ metadata:
+ name: "${HTTPD_SERVICE_NAME}-configs"
+ data:
+ application.conf: |
+ # Timeout: The number of seconds before receives and sends time out.
+ Timeout 120
+
+ RewriteEngine On
+ Options SymLinksIfOwnerMatch
+
+ <VirtualHost *:80>
+ KeepAlive on
+ # Without ServerName mod_auth_mellon compares against http:// and not https:// from the IdP
+ ServerName https://%{REQUEST_HOST}
+
+ ProxyPreserveHost on
+
+ RewriteCond %{REQUEST_URI} ^/ws [NC]
+ RewriteCond %{HTTP:UPGRADE} ^websocket$ [NC]
+ RewriteCond %{HTTP:CONNECTION} ^Upgrade$ [NC]
+ RewriteRule .* ws://${NAME}%{REQUEST_URI} [P,QSA,L]
+
+ # For httpd, some ErrorDocuments must by served by the httpd pod
+ RewriteCond %{REQUEST_URI} !^/proxy_pages
+
+ # For SAML /saml2 is only served by mod_auth_mellon in the httpd pod
+ RewriteCond %{REQUEST_URI} !^/saml2
+ RewriteRule ^/ http://${NAME}%{REQUEST_URI} [P,QSA,L]
+ ProxyPassReverse / http://${NAME}/
+
+ # Ensures httpd stdout/stderr are seen by docker logs.
+ ErrorLog "| /usr/bin/tee /proc/1/fd/2 /var/log/httpd/error_log"
+ CustomLog "| /usr/bin/tee /proc/1/fd/1 /var/log/httpd/access_log" common
+ </VirtualHost>
+ authentication.conf: |
+ # Load appropriate authentication configuration files
+ #
+ Include "conf.d/configuration-${HTTPD_AUTH_TYPE}-auth"
+ configuration-internal-auth: |
+ # Internal authentication
+ #
+ configuration-external-auth: |
+ Include "conf.d/external-auth-load-modules-conf"
+
+ <Location /dashboard/kerberos_authenticate>
+ AuthType Kerberos
+ AuthName "Kerberos Login"
+ KrbMethodNegotiate On
+ KrbMethodK5Passwd Off
+ KrbAuthRealms ${HTTPD_AUTH_KERBEROS_REALMS}
+ Krb5KeyTab /etc/http.keytab
+ KrbServiceName Any
+ Require pam-account httpd-auth
+
+ ErrorDocument 401 /proxy_pages/invalid_sso_credentials.js
+ </Location>
+
+ Include "conf.d/external-auth-login-form-conf"
+ Include "conf.d/external-auth-application-api-conf"
+ Include "conf.d/external-auth-lookup-user-details-conf"
+ Include "conf.d/external-auth-remote-user-conf"
+ configuration-active-directory-auth: |
+ Include "conf.d/external-auth-load-modules-conf"
+
+ <Location /dashboard/kerberos_authenticate>
+ AuthType Kerberos
+ AuthName "Kerberos Login"
+ KrbMethodNegotiate On
+ KrbMethodK5Passwd Off
+ KrbAuthRealms ${HTTPD_AUTH_KERBEROS_REALMS}
+ Krb5KeyTab /etc/krb5.keytab
+ KrbServiceName Any
+ Require pam-account httpd-auth
+
+ ErrorDocument 401 /proxy_pages/invalid_sso_credentials.js
+ </Location>
+
+ Include "conf.d/external-auth-login-form-conf"
+ Include "conf.d/external-auth-application-api-conf"
+ Include "conf.d/external-auth-lookup-user-details-conf"
+ Include "conf.d/external-auth-remote-user-conf"
+ configuration-saml-auth: |
+ LoadModule auth_mellon_module modules/mod_auth_mellon.so
+
+ <Location />
+ MellonEnable "info"
+
+ MellonIdPMetadataFile "/etc/httpd/saml2/idp-metadata.xml"
+
+ MellonSPPrivateKeyFile "/etc/httpd/saml2/sp-key.key"
+ MellonSPCertFile "/etc/httpd/saml2/sp-cert.cert"
+ MellonSPMetadataFile "/etc/httpd/saml2/sp-metadata.xml"
+
+ MellonVariable "sp-cookie"
+ MellonSecureCookie On
+ MellonCookiePath "/"
+
+ MellonIdP "IDP"
+
+ MellonEndpointPath "/saml2"
+
+ MellonUser username
+ MellonMergeEnvVars On
+
+ MellonSetEnvNoPrefix "REMOTE_USER" username
+ MellonSetEnvNoPrefix "REMOTE_USER_EMAIL" email
+ MellonSetEnvNoPrefix "REMOTE_USER_FIRSTNAME" firstname
+ MellonSetEnvNoPrefix "REMOTE_USER_LASTNAME" lastname
+ MellonSetEnvNoPrefix "REMOTE_USER_FULLNAME" fullname
+ MellonSetEnvNoPrefix "REMOTE_USER_GROUPS" groups
+ </Location>
+
+ <Location /saml_login>
+ AuthType "Mellon"
+ MellonEnable "auth"
+ Require valid-user
+ </Location>
+
+ Include "conf.d/external-auth-remote-user-conf"
+ external-auth-load-modules-conf: |
+ LoadModule authnz_pam_module modules/mod_authnz_pam.so
+ LoadModule intercept_form_submit_module modules/mod_intercept_form_submit.so
+ LoadModule lookup_identity_module modules/mod_lookup_identity.so
+ LoadModule auth_kerb_module modules/mod_auth_kerb.so
+ external-auth-login-form-conf: |
+ <Location /dashboard/external_authenticate>
+ InterceptFormPAMService httpd-auth
+ InterceptFormLogin user_name
+ InterceptFormPassword user_password
+ InterceptFormLoginSkip admin
+ InterceptFormClearRemoteUserForSkipped on
+ </Location>
+ external-auth-application-api-conf: |
+ <LocationMatch ^/api>
+ SetEnvIf Authorization '^Basic +YWRtaW46' let_admin_in
+ SetEnvIf X-Auth-Token '^.+$' let_api_token_in
+ SetEnvIf X-MIQ-Token '^.+$' let_sys_token_in
+
+ AuthType Basic
+ AuthName "External Authentication (httpd) for API"
+ AuthBasicProvider PAM
+
+ AuthPAMService httpd-auth
+ Require valid-user
+ Order Allow,Deny
+ Allow from env=let_admin_in
+ Allow from env=let_api_token_in
+ Allow from env=let_sys_token_in
+ Satisfy Any
+ </LocationMatch>
+ external-auth-lookup-user-details-conf: |
+ <LocationMatch ^/dashboard/external_authenticate$|^/dashboard/kerberos_authenticate$|^/api>
+ LookupUserAttr mail REMOTE_USER_EMAIL
+ LookupUserAttr givenname REMOTE_USER_FIRSTNAME
+ LookupUserAttr sn REMOTE_USER_LASTNAME
+ LookupUserAttr displayname REMOTE_USER_FULLNAME
+ LookupUserAttr domainname REMOTE_USER_DOMAIN
+
+ LookupUserGroups REMOTE_USER_GROUPS ":"
+ LookupDbusTimeout 5000
+ </LocationMatch>
+ external-auth-remote-user-conf: |
+ RequestHeader unset X_REMOTE_USER
+
+ RequestHeader set X_REMOTE_USER %{REMOTE_USER}e env=REMOTE_USER
+ RequestHeader set X_EXTERNAL_AUTH_ERROR %{EXTERNAL_AUTH_ERROR}e env=EXTERNAL_AUTH_ERROR
+ RequestHeader set X_REMOTE_USER_EMAIL %{REMOTE_USER_EMAIL}e env=REMOTE_USER_EMAIL
+ RequestHeader set X_REMOTE_USER_FIRSTNAME %{REMOTE_USER_FIRSTNAME}e env=REMOTE_USER_FIRSTNAME
+ RequestHeader set X_REMOTE_USER_LASTNAME %{REMOTE_USER_LASTNAME}e env=REMOTE_USER_LASTNAME
+ RequestHeader set X_REMOTE_USER_FULLNAME %{REMOTE_USER_FULLNAME}e env=REMOTE_USER_FULLNAME
+ RequestHeader set X_REMOTE_USER_GROUPS %{REMOTE_USER_GROUPS}e env=REMOTE_USER_GROUPS
+ RequestHeader set X_REMOTE_USER_DOMAIN %{REMOTE_USER_DOMAIN}e env=REMOTE_USER_DOMAIN
+- apiVersion: v1
+ kind: ConfigMap
+ metadata:
+ name: "${HTTPD_SERVICE_NAME}-auth-configs"
+ data:
+ auth-type: internal
+ auth-kerberos-realms: undefined
+ auth-configuration.conf: |
+ # External Authentication Configuration File
+ #
+ # For details on usage please see https://github.com/ManageIQ/manageiq-pods/blob/master/README.md#configuring-external-authentication
+- apiVersion: v1
kind: Service
metadata:
annotations:
- description: "Exposes and load balances CloudForms pods"
+ description: Exposes and load balances CloudForms pods
service.alpha.openshift.io/dependencies: '[{"name":"${DATABASE_SERVICE_NAME}","namespace":"","kind":"Service"},{"name":"${MEMCACHED_SERVICE_NAME}","namespace":"","kind":"Service"}]'
- name: ${NAME}
+ name: "${NAME}"
spec:
clusterIP: None
ports:
@@ -23,141 +314,97 @@ objects:
port: 80
protocol: TCP
targetPort: 80
- - name: https
- port: 443
- protocol: TCP
- targetPort: 443
selector:
- name: ${NAME}
+ name: "${NAME}"
- apiVersion: v1
kind: Route
metadata:
- name: ${NAME}
+ name: "${HTTPD_SERVICE_NAME}"
spec:
- host: ${APPLICATION_DOMAIN}
+ host: "${APPLICATION_DOMAIN}"
port:
- targetPort: https
+ targetPort: http
tls:
- termination: passthrough
+ termination: edge
+ insecureEdgeTerminationPolicy: Redirect
to:
kind: Service
- name: ${NAME}
-- apiVersion: v1
- kind: ImageStream
- metadata:
- name: cfme-openshift-app
- annotations:
- description: "Keeps track of changes in the CloudForms app image"
- spec:
- dockerImageRepository: "${APPLICATION_IMG_NAME}"
-- apiVersion: v1
- kind: ImageStream
- metadata:
- name: cfme-openshift-postgresql
- annotations:
- description: "Keeps track of changes in the CloudForms postgresql image"
- spec:
- dockerImageRepository: "${POSTGRESQL_IMG_NAME}"
-- apiVersion: v1
- kind: ImageStream
- metadata:
- name: cfme-openshift-memcached
- annotations:
- description: "Keeps track of changes in the CloudForms memcached image"
- spec:
- dockerImageRepository: "${MEMCACHED_IMG_NAME}"
+ name: "${HTTPD_SERVICE_NAME}"
- apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: "${NAME}-${DATABASE_SERVICE_NAME}"
spec:
accessModes:
- - ReadWriteOnce
+ - ReadWriteOnce
resources:
requests:
- storage: ${DATABASE_VOLUME_CAPACITY}
-- apiVersion: v1
- kind: PersistentVolumeClaim
- metadata:
- name: "${NAME}-region"
- spec:
- accessModes:
- - ReadWriteOnce
- resources:
- requests:
- storage: ${APPLICATION_REGION_VOLUME_CAPACITY}
+ storage: "${DATABASE_VOLUME_CAPACITY}"
- apiVersion: apps/v1beta1
- kind: "StatefulSet"
+ kind: StatefulSet
metadata:
- name: ${NAME}
+ name: "${NAME}"
annotations:
- description: "Defines how to deploy the CloudForms appliance"
+ description: Defines how to deploy the CloudForms appliance
spec:
serviceName: "${NAME}"
- replicas: 1
+ replicas: "${APPLICATION_REPLICA_COUNT}"
template:
metadata:
labels:
- name: ${NAME}
- name: ${NAME}
+ name: "${NAME}"
+ name: "${NAME}"
spec:
containers:
- name: cloudforms
- image: "${APPLICATION_IMG_NAME}:${APPLICATION_IMG_TAG}"
+ image: "${FRONTEND_APPLICATION_IMG_NAME}:${FRONTEND_APPLICATION_IMG_TAG}"
livenessProbe:
- tcpSocket:
- port: 443
+ exec:
+ command:
+ - pidof
+ - MIQ Server
initialDelaySeconds: 480
timeoutSeconds: 3
readinessProbe:
- httpGet:
- path: /
- port: 443
- scheme: HTTPS
+ tcpSocket:
+ port: 80
initialDelaySeconds: 200
timeoutSeconds: 3
ports:
- containerPort: 80
protocol: TCP
- - containerPort: 443
- protocol: TCP
- securityContext:
- privileged: true
volumeMounts:
- -
- name: "${NAME}-server"
- mountPath: "/persistent"
- -
- name: "${NAME}-region"
- mountPath: "/persistent-region"
+ - name: "${NAME}-server"
+ mountPath: "/persistent"
env:
- -
- name: "APPLICATION_INIT_DELAY"
- value: "${APPLICATION_INIT_DELAY}"
- -
- name: "DATABASE_SERVICE_NAME"
- value: "${DATABASE_SERVICE_NAME}"
- -
- name: "DATABASE_REGION"
- value: "${DATABASE_REGION}"
- -
- name: "MEMCACHED_SERVICE_NAME"
- value: "${MEMCACHED_SERVICE_NAME}"
- -
- name: "POSTGRESQL_USER"
- value: "${DATABASE_USER}"
- -
- name: "POSTGRESQL_PASSWORD"
- value: "${DATABASE_PASSWORD}"
- -
- name: "POSTGRESQL_DATABASE"
- value: "${DATABASE_NAME}"
- -
- name: "POSTGRESQL_MAX_CONNECTIONS"
- value: "${POSTGRESQL_MAX_CONNECTIONS}"
- -
- name: "POSTGRESQL_SHARED_BUFFERS"
- value: "${POSTGRESQL_SHARED_BUFFERS}"
+ - name: MY_POD_NAMESPACE
+ valueFrom:
+ fieldRef:
+ fieldPath: metadata.namespace
+ - name: APPLICATION_INIT_DELAY
+ value: "${APPLICATION_INIT_DELAY}"
+ - name: DATABASE_REGION
+ value: "${DATABASE_REGION}"
+ - name: DATABASE_URL
+ valueFrom:
+ secretKeyRef:
+ name: "${NAME}-secrets"
+ key: database-url
+ - name: V2_KEY
+ valueFrom:
+ secretKeyRef:
+ name: "${NAME}-secrets"
+ key: v2-key
+ - name: APPLICATION_ADMIN_PASSWORD
+ valueFrom:
+ secretKeyRef:
+ name: "${NAME}-secrets"
+ key: admin-password
+ - name: ANSIBLE_ADMIN_PASSWORD
+ valueFrom:
+ secretKeyRef:
+ name: "${ANSIBLE_SERVICE_NAME}-secrets"
+ key: admin-password
resources:
requests:
memory: "${APPLICATION_MEM_REQ}"
@@ -168,59 +415,128 @@ objects:
preStop:
exec:
command:
- - /opt/rh/cfme-container-scripts/sync-pv-data
- volumes:
- -
- name: "${NAME}-region"
- persistentVolumeClaim:
- claimName: ${NAME}-region
+ - "/opt/rh/cfme-container-scripts/sync-pv-data"
+ serviceAccount: cfme-orchestrator
+ serviceAccountName: cfme-orchestrator
+ terminationGracePeriodSeconds: 90
volumeClaimTemplates:
- - metadata:
- name: "${NAME}-server"
- annotations:
- # Uncomment this if using dynamic volume provisioning.
- # https://docs.openshift.org/latest/install_config/persistent_storage/dynamically_provisioning_pvs.html
- # volume.alpha.kubernetes.io/storage-class: anything
- spec:
- accessModes: [ ReadWriteOnce ]
+ - metadata:
+ name: "${NAME}-server"
+ annotations:
+ spec:
+ accessModes:
+ - ReadWriteOnce
+ resources:
+ requests:
+ storage: "${APPLICATION_VOLUME_CAPACITY}"
+- apiVersion: v1
+ kind: Service
+ metadata:
+ annotations:
+ description: Headless service for CloudForms backend pods
+ name: "${NAME}-backend"
+ spec:
+ clusterIP: None
+ selector:
+ name: "${NAME}-backend"
+- apiVersion: apps/v1beta1
+ kind: StatefulSet
+ metadata:
+ name: "${NAME}-backend"
+ annotations:
+ description: Defines how to deploy the CloudForms appliance
+ spec:
+ serviceName: "${NAME}-backend"
+ replicas: 0
+ template:
+ metadata:
+ labels:
+ name: "${NAME}-backend"
+ name: "${NAME}-backend"
+ spec:
+ containers:
+ - name: cloudforms
+ image: "${BACKEND_APPLICATION_IMG_NAME}:${BACKEND_APPLICATION_IMG_TAG}"
+ livenessProbe:
+ exec:
+ command:
+ - pidof
+ - MIQ Server
+ initialDelaySeconds: 480
+ timeoutSeconds: 3
+ volumeMounts:
+ - name: "${NAME}-server"
+ mountPath: "/persistent"
+ env:
+ - name: APPLICATION_INIT_DELAY
+ value: "${APPLICATION_INIT_DELAY}"
+ - name: DATABASE_URL
+ valueFrom:
+ secretKeyRef:
+ name: "${NAME}-secrets"
+ key: database-url
+ - name: MIQ_SERVER_DEFAULT_ROLES
+ value: database_operations,event,reporting,scheduler,smartstate,ems_operations,ems_inventory,automate
+ - name: FRONTEND_SERVICE_NAME
+ value: "${NAME}"
+ - name: V2_KEY
+ valueFrom:
+ secretKeyRef:
+ name: "${NAME}-secrets"
+ key: v2-key
+ - name: ANSIBLE_ADMIN_PASSWORD
+ valueFrom:
+ secretKeyRef:
+ name: "${ANSIBLE_SERVICE_NAME}-secrets"
+ key: admin-password
resources:
requests:
- storage: "${APPLICATION_VOLUME_CAPACITY}"
+ memory: "${APPLICATION_MEM_REQ}"
+ cpu: "${APPLICATION_CPU_REQ}"
+ limits:
+ memory: "${APPLICATION_MEM_LIMIT}"
+ lifecycle:
+ preStop:
+ exec:
+ command:
+ - "/opt/rh/cfme-container-scripts/sync-pv-data"
+ serviceAccount: cfme-orchestrator
+ serviceAccountName: cfme-orchestrator
+ terminationGracePeriodSeconds: 90
+ volumeClaimTemplates:
+ - metadata:
+ name: "${NAME}-server"
+ annotations:
+ spec:
+ accessModes:
+ - ReadWriteOnce
+ resources:
+ requests:
+ storage: "${APPLICATION_VOLUME_CAPACITY}"
- apiVersion: v1
- kind: "Service"
+ kind: Service
metadata:
name: "${MEMCACHED_SERVICE_NAME}"
annotations:
- description: "Exposes the memcached server"
+ description: Exposes the memcached server
spec:
ports:
- -
- name: "memcached"
- port: 11211
- targetPort: 11211
+ - name: memcached
+ port: 11211
+ targetPort: 11211
selector:
name: "${MEMCACHED_SERVICE_NAME}"
- apiVersion: v1
- kind: "DeploymentConfig"
+ kind: DeploymentConfig
metadata:
name: "${MEMCACHED_SERVICE_NAME}"
annotations:
- description: "Defines how to deploy memcached"
+ description: Defines how to deploy memcached
spec:
strategy:
- type: "Recreate"
+ type: Recreate
triggers:
- -
- type: "ImageChange"
- imageChangeParams:
- automatic: true
- containerNames:
- - "memcached"
- from:
- kind: "ImageStreamTag"
- name: "cfme-openshift-memcached:${MEMCACHED_IMG_TAG}"
- -
- type: "ConfigChange"
+ - type: ConfigChange
replicas: 1
selector:
name: "${MEMCACHED_SERVICE_NAME}"
@@ -232,74 +548,58 @@ objects:
spec:
volumes: []
containers:
- -
- name: "memcached"
- image: "${MEMCACHED_IMG_NAME}:${MEMCACHED_IMG_TAG}"
- ports:
- -
- containerPort: 11211
- readinessProbe:
- timeoutSeconds: 1
- initialDelaySeconds: 5
- tcpSocket:
- port: 11211
- livenessProbe:
- timeoutSeconds: 1
- initialDelaySeconds: 30
- tcpSocket:
- port: 11211
- volumeMounts: []
- env:
- -
- name: "MEMCACHED_MAX_MEMORY"
- value: "${MEMCACHED_MAX_MEMORY}"
- -
- name: "MEMCACHED_MAX_CONNECTIONS"
- value: "${MEMCACHED_MAX_CONNECTIONS}"
- -
- name: "MEMCACHED_SLAB_PAGE_SIZE"
- value: "${MEMCACHED_SLAB_PAGE_SIZE}"
- resources:
- requests:
- memory: "${MEMCACHED_MEM_REQ}"
- cpu: "${MEMCACHED_CPU_REQ}"
- limits:
- memory: "${MEMCACHED_MEM_LIMIT}"
+ - name: memcached
+ image: "${MEMCACHED_IMG_NAME}:${MEMCACHED_IMG_TAG}"
+ ports:
+ - containerPort: 11211
+ readinessProbe:
+ timeoutSeconds: 1
+ initialDelaySeconds: 5
+ tcpSocket:
+ port: 11211
+ livenessProbe:
+ timeoutSeconds: 1
+ initialDelaySeconds: 30
+ tcpSocket:
+ port: 11211
+ volumeMounts: []
+ env:
+ - name: MEMCACHED_MAX_MEMORY
+ value: "${MEMCACHED_MAX_MEMORY}"
+ - name: MEMCACHED_MAX_CONNECTIONS
+ value: "${MEMCACHED_MAX_CONNECTIONS}"
+ - name: MEMCACHED_SLAB_PAGE_SIZE
+ value: "${MEMCACHED_SLAB_PAGE_SIZE}"
+ resources:
+ requests:
+ memory: "${MEMCACHED_MEM_REQ}"
+ cpu: "${MEMCACHED_CPU_REQ}"
+ limits:
+ memory: "${MEMCACHED_MEM_LIMIT}"
- apiVersion: v1
- kind: "Service"
+ kind: Service
metadata:
name: "${DATABASE_SERVICE_NAME}"
annotations:
- description: "Exposes the database server"
+ description: Exposes the database server
spec:
ports:
- -
- name: "postgresql"
- port: 5432
- targetPort: 5432
+ - name: postgresql
+ port: 5432
+ targetPort: 5432
selector:
name: "${DATABASE_SERVICE_NAME}"
- apiVersion: v1
- kind: "DeploymentConfig"
+ kind: DeploymentConfig
metadata:
name: "${DATABASE_SERVICE_NAME}"
annotations:
- description: "Defines how to deploy the database"
+ description: Defines how to deploy the database
spec:
strategy:
- type: "Recreate"
+ type: Recreate
triggers:
- -
- type: "ImageChange"
- imageChangeParams:
- automatic: true
- containerNames:
- - "postgresql"
- from:
- kind: "ImageStreamTag"
- name: "cfme-openshift-postgresql:${POSTGRESQL_IMG_TAG}"
- -
- type: "ConfigChange"
+ - type: ConfigChange
replicas: 1
selector:
name: "${DATABASE_SERVICE_NAME}"
@@ -310,236 +610,524 @@ objects:
name: "${DATABASE_SERVICE_NAME}"
spec:
volumes:
- -
- name: "cfme-pgdb-volume"
- persistentVolumeClaim:
- claimName: "${NAME}-${DATABASE_SERVICE_NAME}"
+ - name: cfme-pgdb-volume
+ persistentVolumeClaim:
+ claimName: "${NAME}-${DATABASE_SERVICE_NAME}"
+ - name: cfme-pg-configs
+ configMap:
+ name: "${DATABASE_SERVICE_NAME}-configs"
containers:
- -
- name: "postgresql"
- image: "${POSTGRESQL_IMG_NAME}:${POSTGRESQL_IMG_TAG}"
- ports:
- -
- containerPort: 5432
- readinessProbe:
- timeoutSeconds: 1
- initialDelaySeconds: 15
+ - name: postgresql
+ image: "${POSTGRESQL_IMG_NAME}:${POSTGRESQL_IMG_TAG}"
+ ports:
+ - containerPort: 5432
+ readinessProbe:
+ timeoutSeconds: 1
+ initialDelaySeconds: 15
+ exec:
+ command:
+ - "/bin/sh"
+ - "-i"
+ - "-c"
+ - psql -h 127.0.0.1 -U ${POSTGRESQL_USER} -q -d ${POSTGRESQL_DATABASE} -c 'SELECT 1'
+ livenessProbe:
+ timeoutSeconds: 1
+ initialDelaySeconds: 60
+ tcpSocket:
+ port: 5432
+ volumeMounts:
+ - name: cfme-pgdb-volume
+ mountPath: "/var/lib/pgsql/data"
+ - name: cfme-pg-configs
+ mountPath: "${POSTGRESQL_CONFIG_DIR}"
+ env:
+ - name: POSTGRESQL_USER
+ value: "${DATABASE_USER}"
+ - name: POSTGRESQL_PASSWORD
+ valueFrom:
+ secretKeyRef:
+ name: "${NAME}-secrets"
+ key: pg-password
+ - name: POSTGRESQL_DATABASE
+ value: "${DATABASE_NAME}"
+ - name: POSTGRESQL_MAX_CONNECTIONS
+ value: "${POSTGRESQL_MAX_CONNECTIONS}"
+ - name: POSTGRESQL_SHARED_BUFFERS
+ value: "${POSTGRESQL_SHARED_BUFFERS}"
+ - name: POSTGRESQL_CONFIG_DIR
+ value: "${POSTGRESQL_CONFIG_DIR}"
+ resources:
+ requests:
+ memory: "${POSTGRESQL_MEM_REQ}"
+ cpu: "${POSTGRESQL_CPU_REQ}"
+ limits:
+ memory: "${POSTGRESQL_MEM_LIMIT}"
+- apiVersion: v1
+ kind: Service
+ metadata:
+ annotations:
+ description: Exposes and load balances Ansible pods
+ service.alpha.openshift.io/dependencies: '[{"name":"${DATABASE_SERVICE_NAME}","namespace":"","kind":"Service"}]'
+ name: "${ANSIBLE_SERVICE_NAME}"
+ spec:
+ ports:
+ - name: http
+ port: 80
+ protocol: TCP
+ targetPort: 80
+ - name: https
+ port: 443
+ protocol: TCP
+ targetPort: 443
+ selector:
+ name: "${ANSIBLE_SERVICE_NAME}"
+- apiVersion: v1
+ kind: DeploymentConfig
+ metadata:
+ name: "${ANSIBLE_SERVICE_NAME}"
+ annotations:
+ description: Defines how to deploy the Ansible appliance
+ spec:
+ strategy:
+ type: Recreate
+ serviceName: "${ANSIBLE_SERVICE_NAME}"
+ replicas: 0
+ template:
+ metadata:
+ labels:
+ name: "${ANSIBLE_SERVICE_NAME}"
+ name: "${ANSIBLE_SERVICE_NAME}"
+ spec:
+ containers:
+ - name: ansible
+ image: "${ANSIBLE_IMG_NAME}:${ANSIBLE_IMG_TAG}"
+ livenessProbe:
+ tcpSocket:
+ port: 443
+ initialDelaySeconds: 480
+ timeoutSeconds: 3
+ readinessProbe:
+ httpGet:
+ path: "/"
+ port: 443
+ scheme: HTTPS
+ initialDelaySeconds: 200
+ timeoutSeconds: 3
+ ports:
+ - containerPort: 80
+ protocol: TCP
+ - containerPort: 443
+ protocol: TCP
+ securityContext:
+ privileged: true
+ env:
+ - name: ADMIN_PASSWORD
+ valueFrom:
+ secretKeyRef:
+ name: "${ANSIBLE_SERVICE_NAME}-secrets"
+ key: admin-password
+ - name: RABBITMQ_USER_NAME
+ value: "${ANSIBLE_RABBITMQ_USER_NAME}"
+ - name: RABBITMQ_PASSWORD
+ valueFrom:
+ secretKeyRef:
+ name: "${ANSIBLE_SERVICE_NAME}-secrets"
+ key: rabbit-password
+ - name: ANSIBLE_SECRET_KEY
+ valueFrom:
+ secretKeyRef:
+ name: "${ANSIBLE_SERVICE_NAME}-secrets"
+ key: secret-key
+ - name: DATABASE_SERVICE_NAME
+ value: "${DATABASE_SERVICE_NAME}"
+ - name: POSTGRESQL_USER
+ value: "${DATABASE_USER}"
+ - name: POSTGRESQL_PASSWORD
+ valueFrom:
+ secretKeyRef:
+ name: "${NAME}-secrets"
+ key: pg-password
+ - name: POSTGRESQL_DATABASE
+ value: "${ANSIBLE_DATABASE_NAME}"
+ resources:
+ requests:
+ memory: "${ANSIBLE_MEM_REQ}"
+ cpu: "${ANSIBLE_CPU_REQ}"
+ limits:
+ memory: "${ANSIBLE_MEM_LIMIT}"
+ serviceAccount: cfme-privileged
+ serviceAccountName: cfme-privileged
+- apiVersion: v1
+ kind: Service
+ metadata:
+ name: "${HTTPD_SERVICE_NAME}"
+ annotations:
+ description: Exposes the httpd server
+ service.alpha.openshift.io/dependencies: '[{"name":"${NAME}","namespace":"","kind":"Service"}]'
+ spec:
+ ports:
+ - name: http
+ port: 80
+ targetPort: 80
+ selector:
+ name: httpd
+- apiVersion: v1
+ kind: Service
+ metadata:
+ name: "${HTTPD_DBUS_API_SERVICE_NAME}"
+ annotations:
+ description: Exposes the httpd server dbus api
+ service.alpha.openshift.io/dependencies: '[{"name":"${NAME}","namespace":"","kind":"Service"}]'
+ spec:
+ ports:
+ - name: http-dbus-api
+ port: 8080
+ targetPort: 8080
+ selector:
+ name: httpd
+- apiVersion: v1
+ kind: DeploymentConfig
+ metadata:
+ name: "${HTTPD_SERVICE_NAME}"
+ annotations:
+ description: Defines how to deploy httpd
+ spec:
+ strategy:
+ type: Recreate
+ recreateParams:
+ timeoutSeconds: 1200
+ triggers:
+ - type: ConfigChange
+ replicas: 1
+ selector:
+ name: "${HTTPD_SERVICE_NAME}"
+ template:
+ metadata:
+ name: "${HTTPD_SERVICE_NAME}"
+ labels:
+ name: "${HTTPD_SERVICE_NAME}"
+ spec:
+ volumes:
+ - name: httpd-config
+ configMap:
+ name: "${HTTPD_SERVICE_NAME}-configs"
+ - name: httpd-auth-config
+ configMap:
+ name: "${HTTPD_SERVICE_NAME}-auth-configs"
+ containers:
+ - name: httpd
+ image: "${HTTPD_IMG_NAME}:${HTTPD_IMG_TAG}"
+ ports:
+ - containerPort: 80
+ protocol: TCP
+ - containerPort: 8080
+ protocol: TCP
+ livenessProbe:
+ exec:
+ command:
+ - pidof
+ - httpd
+ initialDelaySeconds: 15
+ timeoutSeconds: 3
+ readinessProbe:
+ tcpSocket:
+ port: 80
+ initialDelaySeconds: 10
+ timeoutSeconds: 3
+ volumeMounts:
+ - name: httpd-config
+ mountPath: "${HTTPD_CONFIG_DIR}"
+ - name: httpd-auth-config
+ mountPath: "${HTTPD_AUTH_CONFIG_DIR}"
+ resources:
+ requests:
+ memory: "${HTTPD_MEM_REQ}"
+ cpu: "${HTTPD_CPU_REQ}"
+ limits:
+ memory: "${HTTPD_MEM_LIMIT}"
+ env:
+ - name: HTTPD_AUTH_TYPE
+ valueFrom:
+ configMapKeyRef:
+ name: "${HTTPD_SERVICE_NAME}-auth-configs"
+ key: auth-type
+ - name: HTTPD_AUTH_KERBEROS_REALMS
+ valueFrom:
+ configMapKeyRef:
+ name: "${HTTPD_SERVICE_NAME}-auth-configs"
+ key: auth-kerberos-realms
+ lifecycle:
+ postStart:
exec:
command:
- - "/bin/sh"
- - "-i"
- - "-c"
- - "psql -h 127.0.0.1 -U ${POSTGRESQL_USER} -q -d ${POSTGRESQL_DATABASE} -c 'SELECT 1'"
- livenessProbe:
- timeoutSeconds: 1
- initialDelaySeconds: 60
- tcpSocket:
- port: 5432
- volumeMounts:
- -
- name: "cfme-pgdb-volume"
- mountPath: "/var/lib/pgsql/data"
- env:
- -
- name: "POSTGRESQL_USER"
- value: "${DATABASE_USER}"
- -
- name: "POSTGRESQL_PASSWORD"
- value: "${DATABASE_PASSWORD}"
- -
- name: "POSTGRESQL_DATABASE"
- value: "${DATABASE_NAME}"
- -
- name: "POSTGRESQL_MAX_CONNECTIONS"
- value: "${POSTGRESQL_MAX_CONNECTIONS}"
- -
- name: "POSTGRESQL_SHARED_BUFFERS"
- value: "${POSTGRESQL_SHARED_BUFFERS}"
- resources:
- requests:
- memory: "${POSTGRESQL_MEM_REQ}"
- cpu: "${POSTGRESQL_CPU_REQ}"
- limits:
- memory: "${POSTGRESQL_MEM_LIMIT}"
-
+ - "/usr/bin/save-container-environment"
+ serviceAccount: cfme-httpd
+ serviceAccountName: cfme-httpd
parameters:
- -
- name: "NAME"
- displayName: Name
- required: true
- description: "The name assigned to all of the frontend objects defined in this template."
- value: cloudforms
- -
- name: "DATABASE_SERVICE_NAME"
- displayName: "PostgreSQL Service Name"
- required: true
- description: "The name of the OpenShift Service exposed for the PostgreSQL container."
- value: "postgresql"
- -
- name: "DATABASE_USER"
- displayName: "PostgreSQL User"
- required: true
- description: "PostgreSQL user that will access the database."
- value: "root"
- -
- name: "DATABASE_PASSWORD"
- displayName: "PostgreSQL Password"
- required: true
- description: "Password for the PostgreSQL user."
- value: "smartvm"
- -
- name: "DATABASE_NAME"
- required: true
- displayName: "PostgreSQL Database Name"
- description: "Name of the PostgreSQL database accessed."
- value: "vmdb_production"
- -
- name: "DATABASE_REGION"
- required: true
- displayName: "Application Database Region"
- description: "Database region that will be used for application."
- value: "0"
- -
- name: "MEMCACHED_SERVICE_NAME"
- required: true
- displayName: "Memcached Service Name"
- description: "The name of the OpenShift Service exposed for the Memcached container."
- value: "memcached"
- -
- name: "MEMCACHED_MAX_MEMORY"
- displayName: "Memcached Max Memory"
- description: "Memcached maximum memory for memcached object storage in MB."
- value: "64"
- -
- name: "MEMCACHED_MAX_CONNECTIONS"
- displayName: "Memcached Max Connections"
- description: "Memcached maximum number of connections allowed."
- value: "1024"
- -
- name: "MEMCACHED_SLAB_PAGE_SIZE"
- displayName: "Memcached Slab Page Size"
- description: "Memcached size of each slab page."
- value: "1m"
- -
- name: "POSTGRESQL_MAX_CONNECTIONS"
- displayName: "PostgreSQL Max Connections"
- description: "PostgreSQL maximum number of database connections allowed."
- value: "100"
- -
- name: "POSTGRESQL_SHARED_BUFFERS"
- displayName: "PostgreSQL Shared Buffer Amount"
- description: "Amount of memory dedicated for PostgreSQL shared memory buffers."
- value: "256MB"
- -
- name: "APPLICATION_CPU_REQ"
- displayName: "Application Min CPU Requested"
- required: true
- description: "Minimum amount of CPU time the Application container will need (expressed in millicores)."
- value: "1000m"
- -
- name: "POSTGRESQL_CPU_REQ"
- displayName: "PostgreSQL Min CPU Requested"
- required: true
- description: "Minimum amount of CPU time the PostgreSQL container will need (expressed in millicores)."
- value: "500m"
- -
- name: "MEMCACHED_CPU_REQ"
- displayName: "Memcached Min CPU Requested"
- required: true
- description: "Minimum amount of CPU time the Memcached container will need (expressed in millicores)."
- value: "200m"
- -
- name: "APPLICATION_MEM_REQ"
- displayName: "Application Min RAM Requested"
- required: true
- description: "Minimum amount of memory the Application container will need."
- value: "6144Mi"
- -
- name: "POSTGRESQL_MEM_REQ"
- displayName: "PostgreSQL Min RAM Requested"
- required: true
- description: "Minimum amount of memory the PostgreSQL container will need."
- value: "1024Mi"
- -
- name: "MEMCACHED_MEM_REQ"
- displayName: "Memcached Min RAM Requested"
- required: true
- description: "Minimum amount of memory the Memcached container will need."
- value: "64Mi"
- -
- name: "APPLICATION_MEM_LIMIT"
- displayName: "Application Max RAM Limit"
- required: true
- description: "Maximum amount of memory the Application container can consume."
- value: "16384Mi"
- -
- name: "POSTGRESQL_MEM_LIMIT"
- displayName: "PostgreSQL Max RAM Limit"
- required: true
- description: "Maximum amount of memory the PostgreSQL container can consume."
- value: "8192Mi"
- -
- name: "MEMCACHED_MEM_LIMIT"
- displayName: "Memcached Max RAM Limit"
- required: true
- description: "Maximum amount of memory the Memcached container can consume."
- value: "256Mi"
- -
- name: "POSTGRESQL_IMG_NAME"
- displayName: "PostgreSQL Image Name"
- description: "This is the PostgreSQL image name requested to deploy."
- value: "registry.access.redhat.com/cloudforms45/cfme-openshift-postgresql"
- -
- name: "POSTGRESQL_IMG_TAG"
- displayName: "PostgreSQL Image Tag"
- description: "This is the PostgreSQL image tag/version requested to deploy."
- value: "latest"
- -
- name: "MEMCACHED_IMG_NAME"
- displayName: "Memcached Image Name"
- description: "This is the Memcached image name requested to deploy."
- value: "registry.access.redhat.com/cloudforms45/cfme-openshift-memcached"
- -
- name: "MEMCACHED_IMG_TAG"
- displayName: "Memcached Image Tag"
- description: "This is the Memcached image tag/version requested to deploy."
- value: "latest"
- -
- name: "APPLICATION_IMG_NAME"
- displayName: "Application Image Name"
- description: "This is the Application image name requested to deploy."
- value: "registry.access.redhat.com/cloudforms45/cfme-openshift-app"
- -
- name: "APPLICATION_IMG_TAG"
- displayName: "Application Image Tag"
- description: "This is the Application image tag/version requested to deploy."
- value: "latest"
- -
- name: "APPLICATION_DOMAIN"
- displayName: "Application Hostname"
- description: "The exposed hostname that will route to the application service, if left blank a value will be defaulted."
- value: ""
- -
- name: "APPLICATION_INIT_DELAY"
- displayName: "Application Init Delay"
- required: true
- description: "Delay in seconds before we attempt to initialize the application."
- value: "15"
- -
- name: "APPLICATION_VOLUME_CAPACITY"
- displayName: "Application Volume Capacity"
- required: true
- description: "Volume space available for application data."
- value: "5Gi"
- -
- name: "APPLICATION_REGION_VOLUME_CAPACITY"
- displayName: "Application Region Volume Capacity"
- required: true
- description: "Volume space available for region application data."
- value: "5Gi"
- -
- name: "DATABASE_VOLUME_CAPACITY"
- displayName: "Database Volume Capacity"
- required: true
- description: "Volume space available for database."
- value: "15Gi"
+- name: NAME
+ displayName: Name
+ required: true
+ description: The name assigned to all of the frontend objects defined in this template.
+ value: cloudforms
+- name: V2_KEY
+ displayName: CloudForms Encryption Key
+ required: true
+ description: Encryption Key for CloudForms Passwords
+ from: "[a-zA-Z0-9]{43}"
+ generate: expression
+- name: DATABASE_SERVICE_NAME
+ displayName: PostgreSQL Service Name
+ required: true
+ description: The name of the OpenShift Service exposed for the PostgreSQL container.
+ value: postgresql
+- name: DATABASE_USER
+ displayName: PostgreSQL User
+ required: true
+ description: PostgreSQL user that will access the database.
+ value: root
+- name: DATABASE_PASSWORD
+ displayName: PostgreSQL Password
+ required: true
+ description: Password for the PostgreSQL user.
+ from: "[a-zA-Z0-9]{8}"
+ generate: expression
+- name: DATABASE_NAME
+ required: true
+ displayName: PostgreSQL Database Name
+ description: Name of the PostgreSQL database accessed.
+ value: vmdb_production
+- name: DATABASE_REGION
+ required: true
+ displayName: Application Database Region
+ description: Database region that will be used for application.
+ value: '0'
+- name: APPLICATION_ADMIN_PASSWORD
+ displayName: Application Admin Password
+ required: true
+ description: Admin password that will be set on the application.
+ value: smartvm
+- name: ANSIBLE_DATABASE_NAME
+ displayName: Ansible PostgreSQL database name
+ required: true
+ description: The database to be used by the Ansible continer
+ value: awx
+- name: MEMCACHED_SERVICE_NAME
+ required: true
+ displayName: Memcached Service Name
+ description: The name of the OpenShift Service exposed for the Memcached container.
+ value: memcached
+- name: MEMCACHED_MAX_MEMORY
+ displayName: Memcached Max Memory
+ description: Memcached maximum memory for memcached object storage in MB.
+ value: '64'
+- name: MEMCACHED_MAX_CONNECTIONS
+ displayName: Memcached Max Connections
+ description: Memcached maximum number of connections allowed.
+ value: '1024'
+- name: MEMCACHED_SLAB_PAGE_SIZE
+ displayName: Memcached Slab Page Size
+ description: Memcached size of each slab page.
+ value: 1m
+- name: POSTGRESQL_CONFIG_DIR
+ displayName: PostgreSQL Configuration Overrides
+ description: Directory used to store PostgreSQL configuration overrides.
+ value: "/var/lib/pgsql/conf.d"
+- name: POSTGRESQL_MAX_CONNECTIONS
+ displayName: PostgreSQL Max Connections
+ description: PostgreSQL maximum number of database connections allowed.
+ value: '1000'
+- name: POSTGRESQL_SHARED_BUFFERS
+ displayName: PostgreSQL Shared Buffer Amount
+ description: Amount of memory dedicated for PostgreSQL shared memory buffers.
+ value: 1GB
+- name: ANSIBLE_SERVICE_NAME
+ displayName: Ansible Service Name
+ description: The name of the OpenShift Service exposed for the Ansible container.
+ value: ansible
+- name: ANSIBLE_ADMIN_PASSWORD
+ displayName: Ansible admin User password
+ required: true
+ description: The password for the Ansible container admin user
+ from: "[a-zA-Z0-9]{32}"
+ generate: expression
+- name: ANSIBLE_SECRET_KEY
+ displayName: Ansible Secret Key
+ required: true
+ description: Encryption key for the Ansible container
+ from: "[a-f0-9]{32}"
+ generate: expression
+- name: ANSIBLE_RABBITMQ_USER_NAME
+ displayName: RabbitMQ Username
+ required: true
+ description: Username for the Ansible RabbitMQ Server
+ value: ansible
+- name: ANSIBLE_RABBITMQ_PASSWORD
+ displayName: RabbitMQ Server Password
+ required: true
+ description: Password for the Ansible RabbitMQ Server
+ from: "[a-zA-Z0-9]{32}"
+ generate: expression
+- name: APPLICATION_CPU_REQ
+ displayName: Application Min CPU Requested
+ required: true
+ description: Minimum amount of CPU time the Application container will need (expressed in millicores).
+ value: 1000m
+- name: POSTGRESQL_CPU_REQ
+ displayName: PostgreSQL Min CPU Requested
+ required: true
+ description: Minimum amount of CPU time the PostgreSQL container will need (expressed in millicores).
+ value: 500m
+- name: MEMCACHED_CPU_REQ
+ displayName: Memcached Min CPU Requested
+ required: true
+ description: Minimum amount of CPU time the Memcached container will need (expressed in millicores).
+ value: 200m
+- name: ANSIBLE_CPU_REQ
+ displayName: Ansible Min CPU Requested
+ required: true
+ description: Minimum amount of CPU time the Ansible container will need (expressed in millicores).
+ value: 1000m
+- name: APPLICATION_MEM_REQ
+ displayName: Application Min RAM Requested
+ required: true
+ description: Minimum amount of memory the Application container will need.
+ value: 6144Mi
+- name: POSTGRESQL_MEM_REQ
+ displayName: PostgreSQL Min RAM Requested
+ required: true
+ description: Minimum amount of memory the PostgreSQL container will need.
+ value: 4Gi
+- name: MEMCACHED_MEM_REQ
+ displayName: Memcached Min RAM Requested
+ required: true
+ description: Minimum amount of memory the Memcached container will need.
+ value: 64Mi
+- name: ANSIBLE_MEM_REQ
+ displayName: Ansible Min RAM Requested
+ required: true
+ description: Minimum amount of memory the Ansible container will need.
+ value: 2048Mi
+- name: APPLICATION_MEM_LIMIT
+ displayName: Application Max RAM Limit
+ required: true
+ description: Maximum amount of memory the Application container can consume.
+ value: 16384Mi
+- name: POSTGRESQL_MEM_LIMIT
+ displayName: PostgreSQL Max RAM Limit
+ required: true
+ description: Maximum amount of memory the PostgreSQL container can consume.
+ value: 8Gi
+- name: MEMCACHED_MEM_LIMIT
+ displayName: Memcached Max RAM Limit
+ required: true
+ description: Maximum amount of memory the Memcached container can consume.
+ value: 256Mi
+- name: ANSIBLE_MEM_LIMIT
+ displayName: Ansible Max RAM Limit
+ required: true
+ description: Maximum amount of memory the Ansible container can consume.
+ value: 8096Mi
+- name: POSTGRESQL_IMG_NAME
+ displayName: PostgreSQL Image Name
+ description: This is the PostgreSQL image name requested to deploy.
+ value: registry.access.redhat.com/cloudforms46-beta/cfme-openshift-postgresql
+- name: POSTGRESQL_IMG_TAG
+ displayName: PostgreSQL Image Tag
+ description: This is the PostgreSQL image tag/version requested to deploy.
+ value: latest
+- name: MEMCACHED_IMG_NAME
+ displayName: Memcached Image Name
+ description: This is the Memcached image name requested to deploy.
+ value: registry.access.redhat.com/cloudforms46-beta/cfme-openshift-memcached
+- name: MEMCACHED_IMG_TAG
+ displayName: Memcached Image Tag
+ description: This is the Memcached image tag/version requested to deploy.
+ value: latest
+- name: FRONTEND_APPLICATION_IMG_NAME
+ displayName: Frontend Application Image Name
+ description: This is the Frontend Application image name requested to deploy.
+ value: registry.access.redhat.com/cloudforms46-beta/cfme-openshift-app-ui
+- name: BACKEND_APPLICATION_IMG_NAME
+ displayName: Backend Application Image Name
+ description: This is the Backend Application image name requested to deploy.
+ value: registry.access.redhat.com/cloudforms46-beta/cfme-openshift-app
+- name: FRONTEND_APPLICATION_IMG_TAG
+ displayName: Front end Application Image Tag
+ description: This is the CloudForms Frontend Application image tag/version requested to deploy.
+ value: latest
+- name: BACKEND_APPLICATION_IMG_TAG
+ displayName: Back end Application Image Tag
+ description: This is the CloudForms Backend Application image tag/version requested to deploy.
+ value: latest
+- name: ANSIBLE_IMG_NAME
+ displayName: Ansible Image Name
+ description: This is the Ansible image name requested to deploy.
+ value: registry.access.redhat.com/cloudforms46-beta/cfme-openshift-embedded-ansible
+- name: ANSIBLE_IMG_TAG
+ displayName: Ansible Image Tag
+ description: This is the Ansible image tag/version requested to deploy.
+ value: latest
+- name: APPLICATION_DOMAIN
+ displayName: Application Hostname
+ description: The exposed hostname that will route to the application service, if left blank a value will be defaulted.
+ value: ''
+- name: APPLICATION_REPLICA_COUNT
+ displayName: Application Replica Count
+ description: This is the number of Application replicas requested to deploy.
+ value: '1'
+- name: APPLICATION_INIT_DELAY
+ displayName: Application Init Delay
+ required: true
+ description: Delay in seconds before we attempt to initialize the application.
+ value: '15'
+- name: APPLICATION_VOLUME_CAPACITY
+ displayName: Application Volume Capacity
+ required: true
+ description: Volume space available for application data.
+ value: 5Gi
+- name: DATABASE_VOLUME_CAPACITY
+ displayName: Database Volume Capacity
+ required: true
+ description: Volume space available for database.
+ value: 15Gi
+- name: HTTPD_SERVICE_NAME
+ required: true
+ displayName: Apache httpd Service Name
+ description: The name of the OpenShift Service exposed for the httpd container.
+ value: httpd
+- name: HTTPD_DBUS_API_SERVICE_NAME
+ required: true
+ displayName: Apache httpd DBus API Service Name
+ description: The name of httpd dbus api service.
+ value: httpd-dbus-api
+- name: HTTPD_IMG_NAME
+ displayName: Apache httpd Image Name
+ description: This is the httpd image name requested to deploy.
+ value: registry.access.redhat.com/cloudforms46-beta/cfme-openshift-httpd
+- name: HTTPD_IMG_TAG
+ displayName: Apache httpd Image Tag
+ description: This is the httpd image tag/version requested to deploy.
+ value: latest
+- name: HTTPD_CONFIG_DIR
+ displayName: Apache Configuration Directory
+ description: Directory used to store the Apache configuration files.
+ value: "/etc/httpd/conf.d"
+- name: HTTPD_AUTH_CONFIG_DIR
+ displayName: External Authentication Configuration Directory
+ description: Directory used to store the external authentication configuration files.
+ value: "/etc/httpd/auth-conf.d"
+- name: HTTPD_CPU_REQ
+ displayName: Apache httpd Min CPU Requested
+ required: true
+ description: Minimum amount of CPU time the httpd container will need (expressed in millicores).
+ value: 500m
+- name: HTTPD_MEM_REQ
+ displayName: Apache httpd Min RAM Requested
+ required: true
+ description: Minimum amount of memory the httpd container will need.
+ value: 512Mi
+- name: HTTPD_MEM_LIMIT
+ displayName: Apache httpd Max RAM Limit
+ required: true
+ description: Maximum amount of memory the httpd container can consume.
+ value: 8192Mi
diff --git a/roles/openshift_examples/files/examples/v3.9/cfme-templates/jboss-middleware-manager-template.yaml b/roles/openshift_examples/files/examples/v3.9/cfme-templates/jboss-middleware-manager-template.yaml
index bbc0c7044..6ec1c0fed 100644
--- a/roles/openshift_examples/files/examples/v3.9/cfme-templates/jboss-middleware-manager-template.yaml
+++ b/roles/openshift_examples/files/examples/v3.9/cfme-templates/jboss-middleware-manager-template.yaml
@@ -197,7 +197,7 @@ objects:
spec:
containers:
- image: ${CASSANDRA_IMAGE}
- imagePullPolicy: Always
+ imagePullPolicy: IfNotPresent
name: hawkular-cassandra
env:
- name: DATA_VOLUME
diff --git a/roles/openshift_examples/files/examples/v3.9/db-templates/mariadb-ephemeral-template.json b/roles/openshift_examples/files/examples/v3.9/db-templates/mariadb-ephemeral-template.json
index 5e7585eeb..1772dbbcf 100644
--- a/roles/openshift_examples/files/examples/v3.9/db-templates/mariadb-ephemeral-template.json
+++ b/roles/openshift_examples/files/examples/v3.9/db-templates/mariadb-ephemeral-template.json
@@ -5,16 +5,16 @@
"name": "mariadb-ephemeral",
"annotations": {
"openshift.io/display-name": "MariaDB (Ephemeral)",
- "description": "MariaDB database service, without persistent storage. For more information about using this template, including OpenShift considerations, see https://github.com/sclorg/mariadb-container/blob/master/10.1/README.md.\n\nWARNING: Any data stored will be lost upon pod destruction. Only use this template for testing",
+ "description": "MariaDB database service, without persistent storage. For more information about using this template, including OpenShift considerations, see https://github.com/sclorg/mariadb-container/blob/master/10.2/root/usr/share/container-scripts/mysql/README.md.\n\nWARNING: Any data stored will be lost upon pod destruction. Only use this template for testing",
"iconClass": "icon-mariadb",
"tags": "database,mariadb",
"openshift.io/long-description": "This template provides a standalone MariaDB server with a database created. The database is not stored on persistent storage, so any restart of the service will result in all data being lost. The database name, username, and password are chosen via parameters when provisioning this service.",
"openshift.io/provider-display-name": "Red Hat, Inc.",
- "openshift.io/documentation-url": "https://github.com/sclorg/mariadb-container/blob/master/10.1/README.md",
+ "openshift.io/documentation-url": "https://github.com/sclorg/mariadb-container/blob/master/10.2/root/usr/share/container-scripts/mysql/README.md",
"openshift.io/support-url": "https://access.redhat.com"
}
},
- "message": "The following service(s) have been created in your project: ${DATABASE_SERVICE_NAME}.\n\n Username: ${MYSQL_USER}\n Password: ${MYSQL_PASSWORD}\n Database Name: ${MYSQL_DATABASE}\n Connection URL: mysql://${DATABASE_SERVICE_NAME}:3306/\n\nFor more information about using this template, including OpenShift considerations, see https://github.com/sclorg/mariadb-container/blob/master/10.1/README.md.",
+ "message": "The following service(s) have been created in your project: ${DATABASE_SERVICE_NAME}.\n\n Username: ${MYSQL_USER}\n Password: ${MYSQL_PASSWORD}\n Database Name: ${MYSQL_DATABASE}\n Connection URL: mysql://${DATABASE_SERVICE_NAME}:3306/\n\nFor more information about using this template, including OpenShift considerations, see https://github.com/sclorg/mariadb-container/blob/master/10.2/root/usr/share/container-scripts/mysql/README.md.",
"labels": {
"template": "mariadb-persistent-template"
},
@@ -82,7 +82,7 @@
],
"from": {
"kind": "ImageStreamTag",
- "name": "mariadb:10.1",
+ "name": "mariadb:${MARIADB_VERSION}",
"namespace": "${NAMESPACE}"
}
}
@@ -242,6 +242,13 @@
"description": "Name of the MariaDB database accessed.",
"value": "sampledb",
"required": true
+ },
+ {
+ "name": "MARIADB_VERSION",
+ "displayName": "Version of MariaDB Image",
+ "description": "Version of MariaDB image to be used (10.0, 10.1, 10.2 or latest).",
+ "value": "10.2",
+ "required": true
}
]
}
diff --git a/roles/openshift_examples/files/examples/v3.9/db-templates/mariadb-persistent-template.json b/roles/openshift_examples/files/examples/v3.9/db-templates/mariadb-persistent-template.json
index 217ef11dd..8424ecbc8 100644
--- a/roles/openshift_examples/files/examples/v3.9/db-templates/mariadb-persistent-template.json
+++ b/roles/openshift_examples/files/examples/v3.9/db-templates/mariadb-persistent-template.json
@@ -4,17 +4,17 @@
"metadata": {
"name": "mariadb-persistent",
"annotations": {
- "openshift.io/display-name": "MariaDB (Persistent)",
- "description": "MariaDB database service, with persistent storage. For more information about using this template, including OpenShift considerations, see https://github.com/sclorg/mariadb-container/blob/master/10.1/README.md.\n\nNOTE: Scaling to more than one replica is not supported. You must have persistent volumes available in your cluster to use this template.",
+ "openshift.io/display-name": "MariaDB",
+ "description": "MariaDB database service, with persistent storage. For more information about using this template, including OpenShift considerations, see https://github.com/sclorg/mariadb-container/blob/master/10.2/root/usr/share/container-scripts/mysql/README.md.\n\nNOTE: Scaling to more than one replica is not supported. You must have persistent volumes available in your cluster to use this template.",
"iconClass": "icon-mariadb",
"tags": "database,mariadb",
"openshift.io/long-description": "This template provides a standalone MariaDB server with a database created. The database is stored on persistent storage. The database name, username, and password are chosen via parameters when provisioning this service.",
"openshift.io/provider-display-name": "Red Hat, Inc.",
- "openshift.io/documentation-url": "https://github.com/sclorg/mariadb-container/blob/master/10.1/README.md",
+ "openshift.io/documentation-url": "https://github.com/sclorg/mariadb-container/blob/master/10.2/root/usr/share/container-scripts/mysql/README.md",
"openshift.io/support-url": "https://access.redhat.com"
}
},
- "message": "The following service(s) have been created in your project: ${DATABASE_SERVICE_NAME}.\n\n Username: ${MYSQL_USER}\n Password: ${MYSQL_PASSWORD}\n Database Name: ${MYSQL_DATABASE}\n Connection URL: mysql://${DATABASE_SERVICE_NAME}:3306/\n\nFor more information about using this template, including OpenShift considerations, see https://github.com/sclorg/mariadb-container/blob/master/10.1/README.md.",
+ "message": "The following service(s) have been created in your project: ${DATABASE_SERVICE_NAME}.\n\n Username: ${MYSQL_USER}\n Password: ${MYSQL_PASSWORD}\n Database Name: ${MYSQL_DATABASE}\n Connection URL: mysql://${DATABASE_SERVICE_NAME}:3306/\n\nFor more information about using this template, including OpenShift considerations, see https://github.com/sclorg/mariadb-container/blob/master/10.2/root/usr/share/container-scripts/mysql/README.md.",
"labels": {
"template": "mariadb-persistent-template"
},
@@ -99,7 +99,7 @@
],
"from": {
"kind": "ImageStreamTag",
- "name": "mariadb:10.1",
+ "name": "mariadb:${MARIADB_VERSION}",
"namespace": "${NAMESPACE}"
}
}
@@ -261,6 +261,13 @@
"required": true
},
{
+ "name": "MARIADB_VERSION",
+ "displayName": "Version of MariaDB Image",
+ "description": "Version of MariaDB image to be used (10.0, 10.1, 10.2 or latest).",
+ "value": "10.2",
+ "required": true
+ },
+ {
"name": "VOLUME_CAPACITY",
"displayName": "Volume Capacity",
"description": "Volume space available for data, e.g. 512Mi, 2Gi.",
diff --git a/roles/openshift_examples/files/examples/v3.9/db-templates/mongodb-persistent-template.json b/roles/openshift_examples/files/examples/v3.9/db-templates/mongodb-persistent-template.json
index 97e4128a4..4e3e64d48 100644
--- a/roles/openshift_examples/files/examples/v3.9/db-templates/mongodb-persistent-template.json
+++ b/roles/openshift_examples/files/examples/v3.9/db-templates/mongodb-persistent-template.json
@@ -4,7 +4,7 @@
"metadata": {
"name": "mongodb-persistent",
"annotations": {
- "openshift.io/display-name": "MongoDB (Persistent)",
+ "openshift.io/display-name": "MongoDB",
"description": "MongoDB database service, with persistent storage. For more information about using this template, including OpenShift considerations, see https://github.com/sclorg/mongodb-container/blob/master/3.2/README.md.\n\nNOTE: Scaling to more than one replica is not supported. You must have persistent volumes available in your cluster to use this template.",
"iconClass": "icon-mongodb",
"tags": "database,mongodb",
diff --git a/roles/openshift_examples/files/examples/v3.9/db-templates/mysql-ephemeral-template.json b/roles/openshift_examples/files/examples/v3.9/db-templates/mysql-ephemeral-template.json
index c0946416d..bed940a37 100644
--- a/roles/openshift_examples/files/examples/v3.9/db-templates/mysql-ephemeral-template.json
+++ b/roles/openshift_examples/files/examples/v3.9/db-templates/mysql-ephemeral-template.json
@@ -5,7 +5,7 @@
"name": "mysql-ephemeral",
"annotations": {
"openshift.io/display-name": "MySQL (Ephemeral)",
- "description": "MySQL database service, without persistent storage. For more information about using this template, including OpenShift considerations, see https://github.com/sclorg/mysql-container/blob/master/5.7/README.md.\n\nWARNING: Any data stored will be lost upon pod destruction. Only use this template for testing",
+ "description": "MySQL database service, without persistent storage. For more information about using this template, including OpenShift considerations, see https://github.com/sclorg/mysql-container/blob/master/5.7/root/usr/share/container-scripts/mysql/README.md.\n\nWARNING: Any data stored will be lost upon pod destruction. Only use this template for testing",
"iconClass": "icon-mysql-database",
"tags": "database,mysql",
"openshift.io/long-description": "This template provides a standalone MySQL server with a database created. The database is not stored on persistent storage, so any restart of the service will result in all data being lost. The database name, username, and password are chosen via parameters when provisioning this service.",
@@ -14,7 +14,7 @@
"openshift.io/support-url": "https://access.redhat.com"
}
},
- "message": "The following service(s) have been created in your project: ${DATABASE_SERVICE_NAME}.\n\n Username: ${MYSQL_USER}\n Password: ${MYSQL_PASSWORD}\n Database Name: ${MYSQL_DATABASE}\n Connection URL: mysql://${DATABASE_SERVICE_NAME}:3306/\n\nFor more information about using this template, including OpenShift considerations, see https://github.com/sclorg/mysql-container/blob/master/5.7/README.md.",
+ "message": "The following service(s) have been created in your project: ${DATABASE_SERVICE_NAME}.\n\n Username: ${MYSQL_USER}\n Password: ${MYSQL_PASSWORD}\n Database Name: ${MYSQL_DATABASE}\n Connection URL: mysql://${DATABASE_SERVICE_NAME}:3306/\n\nFor more information about using this template, including OpenShift considerations, see https://github.com/sclorg/mysql-container/blob/master/5.7/root/usr/share/container-scripts/mysql/README.md.",
"labels": {
"template": "mysql-ephemeral-template"
},
diff --git a/roles/openshift_examples/files/examples/v3.9/db-templates/mysql-persistent-template.json b/roles/openshift_examples/files/examples/v3.9/db-templates/mysql-persistent-template.json
index 48ac114fd..85adde65d 100644
--- a/roles/openshift_examples/files/examples/v3.9/db-templates/mysql-persistent-template.json
+++ b/roles/openshift_examples/files/examples/v3.9/db-templates/mysql-persistent-template.json
@@ -4,8 +4,8 @@
"metadata": {
"name": "mysql-persistent",
"annotations": {
- "openshift.io/display-name": "MySQL (Persistent)",
- "description": "MySQL database service, with persistent storage. For more information about using this template, including OpenShift considerations, see https://github.com/sclorg/mysql-container/blob/master/5.7/README.md.\n\nNOTE: Scaling to more than one replica is not supported. You must have persistent volumes available in your cluster to use this template.",
+ "openshift.io/display-name": "MySQL",
+ "description": "MySQL database service, with persistent storage. For more information about using this template, including OpenShift considerations, see https://github.com/sclorg/mysql-container/blob/master/5.7/root/usr/share/container-scripts/mysql/README.md.\n\nNOTE: Scaling to more than one replica is not supported. You must have persistent volumes available in your cluster to use this template.",
"iconClass": "icon-mysql-database",
"tags": "database,mysql",
"openshift.io/long-description": "This template provides a standalone MySQL server with a database created. The database is stored on persistent storage. The database name, username, and password are chosen via parameters when provisioning this service.",
@@ -14,7 +14,7 @@
"openshift.io/support-url": "https://access.redhat.com"
}
},
- "message": "The following service(s) have been created in your project: ${DATABASE_SERVICE_NAME}.\n\n Username: ${MYSQL_USER}\n Password: ${MYSQL_PASSWORD}\n Database Name: ${MYSQL_DATABASE}\n Connection URL: mysql://${DATABASE_SERVICE_NAME}:3306/\n\nFor more information about using this template, including OpenShift considerations, see https://github.com/sclorg/mysql-container/blob/master/5.7/README.md.",
+ "message": "The following service(s) have been created in your project: ${DATABASE_SERVICE_NAME}.\n\n Username: ${MYSQL_USER}\n Password: ${MYSQL_PASSWORD}\n Database Name: ${MYSQL_DATABASE}\n Connection URL: mysql://${DATABASE_SERVICE_NAME}:3306/\n\nFor more information about using this template, including OpenShift considerations, see https://github.com/sclorg/mysql-container/blob/master/5.7/root/usr/share/container-scripts/mysql/README.md.",
"labels": {
"template": "mysql-persistent-template"
},
diff --git a/roles/openshift_examples/files/examples/v3.9/db-templates/postgresql-ephemeral-template.json b/roles/openshift_examples/files/examples/v3.9/db-templates/postgresql-ephemeral-template.json
index 7c419f1ae..f29698d0c 100644
--- a/roles/openshift_examples/files/examples/v3.9/db-templates/postgresql-ephemeral-template.json
+++ b/roles/openshift_examples/files/examples/v3.9/db-templates/postgresql-ephemeral-template.json
@@ -5,7 +5,7 @@
"name": "postgresql-ephemeral",
"annotations": {
"openshift.io/display-name": "PostgreSQL (Ephemeral)",
- "description": "PostgreSQL database service, without persistent storage. For more information about using this template, including OpenShift considerations, see https://github.com/sclorg/postgresql-container/blob/master/9.5.\n\nWARNING: Any data stored will be lost upon pod destruction. Only use this template for testing",
+ "description": "PostgreSQL database service, without persistent storage. For more information about using this template, including OpenShift considerations, see https://github.com/sclorg/postgresql-container/.\n\nWARNING: Any data stored will be lost upon pod destruction. Only use this template for testing",
"iconClass": "icon-postgresql",
"tags": "database,postgresql",
"openshift.io/long-description": "This template provides a standalone PostgreSQL server with a database created. The database is not stored on persistent storage, so any restart of the service will result in all data being lost. The database name, username, and password are chosen via parameters when provisioning this service.",
@@ -14,7 +14,7 @@
"openshift.io/support-url": "https://access.redhat.com"
}
},
- "message": "The following service(s) have been created in your project: ${DATABASE_SERVICE_NAME}.\n\n Username: ${POSTGRESQL_USER}\n Password: ${POSTGRESQL_PASSWORD}\n Database Name: ${POSTGRESQL_DATABASE}\n Connection URL: postgresql://${DATABASE_SERVICE_NAME}:5432/\n\nFor more information about using this template, including OpenShift considerations, see https://github.com/sclorg/postgresql-container/blob/master/9.5.",
+ "message": "The following service(s) have been created in your project: ${DATABASE_SERVICE_NAME}.\n\n Username: ${POSTGRESQL_USER}\n Password: ${POSTGRESQL_PASSWORD}\n Database Name: ${POSTGRESQL_DATABASE}\n Connection URL: postgresql://${DATABASE_SERVICE_NAME}:5432/\n\nFor more information about using this template, including OpenShift considerations, see https://github.com/sclorg/postgresql-container/.",
"labels": {
"template": "postgresql-ephemeral-template"
},
@@ -127,11 +127,11 @@
}
},
"livenessProbe": {
+ "exec": {
+ "command": [ "/bin/sh", "-i", "-c", "pg_isready -h 127.0.0.1 -p 5432" ]
+ },
"timeoutSeconds": 1,
- "initialDelaySeconds": 30,
- "tcpSocket": {
- "port": 5432
- }
+ "initialDelaySeconds": 30
},
"env": [
{
@@ -245,8 +245,8 @@
{
"name": "POSTGRESQL_VERSION",
"displayName": "Version of PostgreSQL Image",
- "description": "Version of PostgreSQL image to be used (9.2, 9.4, 9.5 or latest).",
- "value": "9.5",
+ "description": "Version of PostgreSQL image to be used (9.4, 9.5, 9.6 or latest).",
+ "value": "9.6",
"required": true
}
]
diff --git a/roles/openshift_examples/files/examples/v3.9/db-templates/postgresql-persistent-template.json b/roles/openshift_examples/files/examples/v3.9/db-templates/postgresql-persistent-template.json
index 8a2d23907..7feeb704a 100644
--- a/roles/openshift_examples/files/examples/v3.9/db-templates/postgresql-persistent-template.json
+++ b/roles/openshift_examples/files/examples/v3.9/db-templates/postgresql-persistent-template.json
@@ -4,8 +4,8 @@
"metadata": {
"name": "postgresql-persistent",
"annotations": {
- "openshift.io/display-name": "PostgreSQL (Persistent)",
- "description": "PostgreSQL database service, with persistent storage. For more information about using this template, including OpenShift considerations, see https://github.com/sclorg/postgresql-container/blob/master/9.5.\n\nNOTE: Scaling to more than one replica is not supported. You must have persistent volumes available in your cluster to use this template.",
+ "openshift.io/display-name": "PostgreSQL",
+ "description": "PostgreSQL database service, with persistent storage. For more information about using this template, including OpenShift considerations, see https://github.com/sclorg/postgresql-container/.\n\nNOTE: Scaling to more than one replica is not supported. You must have persistent volumes available in your cluster to use this template.",
"iconClass": "icon-postgresql",
"tags": "database,postgresql",
"openshift.io/long-description": "This template provides a standalone PostgreSQL server with a database created. The database is stored on persistent storage. The database name, username, and password are chosen via parameters when provisioning this service.",
@@ -14,7 +14,7 @@
"openshift.io/support-url": "https://access.redhat.com"
}
},
- "message": "The following service(s) have been created in your project: ${DATABASE_SERVICE_NAME}.\n\n Username: ${POSTGRESQL_USER}\n Password: ${POSTGRESQL_PASSWORD}\n Database Name: ${POSTGRESQL_DATABASE}\n Connection URL: postgresql://${DATABASE_SERVICE_NAME}:5432/\n\nFor more information about using this template, including OpenShift considerations, see https://github.com/sclorg/postgresql-container/blob/master/9.5.",
+ "message": "The following service(s) have been created in your project: ${DATABASE_SERVICE_NAME}.\n\n Username: ${POSTGRESQL_USER}\n Password: ${POSTGRESQL_PASSWORD}\n Database Name: ${POSTGRESQL_DATABASE}\n Connection URL: postgresql://${DATABASE_SERVICE_NAME}:5432/\n\nFor more information about using this template, including OpenShift considerations, see https://github.com/sclorg/postgresql-container/.",
"labels": {
"template": "postgresql-persistent-template"
},
@@ -144,11 +144,11 @@
}
},
"livenessProbe": {
+ "exec": {
+ "command": [ "/bin/sh", "-i", "-c", "pg_isready -h 127.0.0.1 -p 5432" ]
+ },
"timeoutSeconds": 1,
- "initialDelaySeconds": 30,
- "tcpSocket": {
- "port": 5432
- }
+ "initialDelaySeconds": 30
},
"env": [
{
@@ -269,8 +269,8 @@
{
"name": "POSTGRESQL_VERSION",
"displayName": "Version of PostgreSQL Image",
- "description": "Version of PostgreSQL image to be used (9.2, 9.4, 9.5 or latest).",
- "value": "9.5",
+ "description": "Version of PostgreSQL image to be used (9.4, 9.5, 9.6 or latest).",
+ "value": "9.6",
"required": true
}
]
diff --git a/roles/openshift_examples/files/examples/v3.9/db-templates/redis-persistent-template.json b/roles/openshift_examples/files/examples/v3.9/db-templates/redis-persistent-template.json
index e0e0a88d5..d1103d3af 100644
--- a/roles/openshift_examples/files/examples/v3.9/db-templates/redis-persistent-template.json
+++ b/roles/openshift_examples/files/examples/v3.9/db-templates/redis-persistent-template.json
@@ -4,7 +4,7 @@
"metadata": {
"name": "redis-persistent",
"annotations": {
- "openshift.io/display-name": "Redis (Persistent)",
+ "openshift.io/display-name": "Redis",
"description": "Redis in-memory data structure store, with persistent storage. For more information about using this template, including OpenShift considerations, see https://github.com/sclorg/redis-container/blob/master/3.2.\n\nNOTE: You must have persistent volumes available in your cluster to use this template.",
"iconClass": "icon-redis",
"tags": "database,redis",
diff --git a/roles/openshift_examples/files/examples/v3.9/image-streams/image-streams-centos7.json b/roles/openshift_examples/files/examples/v3.9/image-streams/image-streams-centos7.json
index e7af160d9..924c2884b 100644
--- a/roles/openshift_examples/files/examples/v3.9/image-streams/image-streams-centos7.json
+++ b/roles/openshift_examples/files/examples/v3.9/image-streams/image-streams-centos7.json
@@ -44,7 +44,7 @@
},
"from": {
"kind": "DockerImage",
- "name": "centos/httpd-24-centos7:latest"
+ "name": "docker.io/centos/httpd-24-centos7:latest"
}
}
]
@@ -91,7 +91,7 @@
},
"from": {
"kind": "DockerImage",
- "name": "openshift/ruby-20-centos7:latest"
+ "name": "docker.io/openshift/ruby-20-centos7:latest"
}
},
{
@@ -108,7 +108,7 @@
},
"from": {
"kind": "DockerImage",
- "name": "centos/ruby-22-centos7:latest"
+ "name": "docker.io/centos/ruby-22-centos7:latest"
}
},
{
@@ -125,7 +125,7 @@
},
"from": {
"kind": "DockerImage",
- "name": "centos/ruby-23-centos7:latest"
+ "name": "docker.io/centos/ruby-23-centos7:latest"
}
},
{
@@ -142,7 +142,7 @@
},
"from": {
"kind": "DockerImage",
- "name": "centos/ruby-24-centos7:latest"
+ "name": "docker.io/centos/ruby-24-centos7:latest"
}
}
]
@@ -164,7 +164,7 @@
"annotations": {
"openshift.io/display-name": "Node.js (Latest)",
"openshift.io/provider-display-name": "Red Hat, Inc.",
- "description": "Build and run Node.js applications on CentOS 7. For more information about using this builder image, including OpenShift considerations, see https://github.com/sclorg/s2i-nodejs-container/blob/master/4/README.md.\n\nWARNING: By selecting this tag, your application will automatically update to use the latest version of Node.js available on OpenShift, including major versions updates.",
+ "description": "Build and run Node.js applications on CentOS 7. For more information about using this builder image, including OpenShift considerations, see https://github.com/sclorg/s2i-nodejs-container/blob/master/8/README.md.\n\nWARNING: By selecting this tag, your application will automatically update to use the latest version of Node.js available on OpenShift, including major versions updates.",
"iconClass": "icon-nodejs",
"tags": "builder,nodejs",
"supports":"nodejs",
@@ -172,7 +172,7 @@
},
"from": {
"kind": "ImageStreamTag",
- "name": "6"
+ "name": "8"
}
},
{
@@ -189,7 +189,7 @@
},
"from": {
"kind": "DockerImage",
- "name": "openshift/nodejs-010-centos7:latest"
+ "name": "docker.io/openshift/nodejs-010-centos7:latest"
}
},
{
@@ -206,7 +206,7 @@
},
"from": {
"kind": "DockerImage",
- "name": "centos/nodejs-4-centos7:latest"
+ "name": "docker.io/centos/nodejs-4-centos7:latest"
}
},
{
@@ -223,7 +223,23 @@
},
"from": {
"kind": "DockerImage",
- "name": "centos/nodejs-6-centos7:latest"
+ "name": "docker.io/centos/nodejs-6-centos7:latest"
+ }
+ },
+ {
+ "name": "8",
+ "annotations": {
+ "openshift.io/display-name": "Node.js 8",
+ "openshift.io/provider-display-name": "Red Hat, Inc.",
+ "description": "Build and run Node.js 8 applications on CentOS 7. For more information about using this builder image, including OpenShift considerations, see https://github.com/sclorg/s2i-nodejs-container/blob/master/8/README.md.",
+ "iconClass": "icon-nodejs",
+ "tags": "builder,nodejs",
+ "version": "8",
+ "sampleRepo": "https://github.com/openshift/nodejs-ex.git"
+ },
+ "from": {
+ "kind": "DockerImage",
+ "name": "docker.io/centos/nodejs-8-centos7:latest"
}
}
]
@@ -270,7 +286,7 @@
},
"from": {
"kind": "DockerImage",
- "name": "openshift/perl-516-centos7:latest"
+ "name": "docker.io/openshift/perl-516-centos7:latest"
}
},
{
@@ -287,7 +303,7 @@
},
"from": {
"kind": "DockerImage",
- "name": "centos/perl-520-centos7:latest"
+ "name": "docker.io/centos/perl-520-centos7:latest"
}
},
{
@@ -304,7 +320,7 @@
},
"from": {
"kind": "DockerImage",
- "name": "centos/perl-524-centos7:latest"
+ "name": "docker.io/centos/perl-524-centos7:latest"
}
}
]
@@ -326,7 +342,7 @@
"annotations": {
"openshift.io/display-name": "PHP (Latest)",
"openshift.io/provider-display-name": "Red Hat, Inc.",
- "description": "Build and run PHP applications on CentOS 7. For more information about using this builder image, including OpenShift considerations, see https://github.com/sclorg/s2i-php-container/blob/master/5.6/README.md.\n\nWARNING: By selecting this tag, your application will automatically update to use the latest version of PHP available on OpenShift, including major versions updates.",
+ "description": "Build and run PHP applications on CentOS 7. For more information about using this builder image, including OpenShift considerations, see https://github.com/sclorg/s2i-php-container/blob/master/7.1/README.md.\n\nWARNING: By selecting this tag, your application will automatically update to use the latest version of PHP available on OpenShift, including major versions updates.",
"iconClass": "icon-php",
"tags": "builder,php",
"supports":"php",
@@ -334,7 +350,7 @@
},
"from": {
"kind": "ImageStreamTag",
- "name": "7.0"
+ "name": "7.1"
}
},
{
@@ -351,7 +367,7 @@
},
"from": {
"kind": "DockerImage",
- "name": "openshift/php-55-centos7:latest"
+ "name": "docker.io/openshift/php-55-centos7:latest"
}
},
{
@@ -368,7 +384,7 @@
},
"from": {
"kind": "DockerImage",
- "name": "centos/php-56-centos7:latest"
+ "name": "docker.io/centos/php-56-centos7:latest"
}
},
{
@@ -385,7 +401,24 @@
},
"from": {
"kind": "DockerImage",
- "name": "centos/php-70-centos7:latest"
+ "name": "docker.io/centos/php-70-centos7:latest"
+ }
+ },
+ {
+ "name": "7.1",
+ "annotations": {
+ "openshift.io/display-name": "PHP 7.1",
+ "openshift.io/provider-display-name": "Red Hat, Inc.",
+ "description": "Build and run PHP 7.1 applications on CentOS 7. For more information about using this builder image, including OpenShift considerations, see https://github.com/sclorg/s2i-php-container/blob/master/7.1/README.md.",
+ "iconClass": "icon-php",
+ "tags": "builder,php",
+ "supports":"php:7.1,php",
+ "version": "7.1",
+ "sampleRepo": "https://github.com/openshift/cakephp-ex.git"
+ },
+ "from": {
+ "kind": "DockerImage",
+ "name": "docker.io/centos/php-71-centos7:latest"
}
}
]
@@ -407,7 +440,7 @@
"annotations": {
"openshift.io/display-name": "Python (Latest)",
"openshift.io/provider-display-name": "Red Hat, Inc.",
- "description": "Build and run Python applications on CentOS 7. For more information about using this builder image, including OpenShift considerations, see https://github.com/sclorg/s2i-python-container/blob/master/3.5/README.md.\n\nWARNING: By selecting this tag, your application will automatically update to use the latest version of Python available on OpenShift, including major versions updates.",
+ "description": "Build and run Python applications on CentOS 7. For more information about using this builder image, including OpenShift considerations, see https://github.com/sclorg/s2i-python-container/blob/master/3.6/README.md.\n\nWARNING: By selecting this tag, your application will automatically update to use the latest version of Python available on OpenShift, including major versions updates.",
"iconClass": "icon-python",
"tags": "builder,python",
"supports":"python",
@@ -415,7 +448,7 @@
},
"from": {
"kind": "ImageStreamTag",
- "name": "3.5"
+ "name": "3.6"
}
},
{
@@ -432,7 +465,7 @@
},
"from": {
"kind": "DockerImage",
- "name": "openshift/python-33-centos7:latest"
+ "name": "docker.io/openshift/python-33-centos7:latest"
}
},
{
@@ -449,7 +482,7 @@
},
"from": {
"kind": "DockerImage",
- "name": "centos/python-27-centos7:latest"
+ "name": "docker.io/centos/python-27-centos7:latest"
}
},
{
@@ -466,7 +499,7 @@
},
"from": {
"kind": "DockerImage",
- "name": "centos/python-34-centos7:latest"
+ "name": "docker.io/centos/python-34-centos7:latest"
}
},
{
@@ -483,7 +516,24 @@
},
"from": {
"kind": "DockerImage",
- "name": "centos/python-35-centos7:latest"
+ "name": "docker.io/centos/python-35-centos7:latest"
+ }
+ },
+ {
+ "name": "3.6",
+ "annotations": {
+ "openshift.io/display-name": "Python 3.6",
+ "openshift.io/provider-display-name": "Red Hat, Inc.",
+ "description": "Build and run Python 3.6 applications on CentOS 7. For more information about using this builder image, including OpenShift considerations, see https://github.com/sclorg/s2i-python-container/blob/master/3.6/README.md.",
+ "iconClass": "icon-python",
+ "tags": "builder,python",
+ "supports":"python:3.6,python",
+ "version": "3.6",
+ "sampleRepo": "https://github.com/openshift/django-ex.git"
+ },
+ "from": {
+ "kind": "DockerImage",
+ "name": "docker.io/centos/python-36-centos7:latest"
}
}
]
@@ -530,7 +580,7 @@
},
"from": {
"kind": "DockerImage",
- "name": "openshift/wildfly-81-centos7:latest"
+ "name": "docker.io/openshift/wildfly-81-centos7:latest"
}
},
{
@@ -547,7 +597,7 @@
},
"from": {
"kind": "DockerImage",
- "name": "openshift/wildfly-90-centos7:latest"
+ "name": "docker.io/openshift/wildfly-90-centos7:latest"
}
},
{
@@ -564,7 +614,7 @@
},
"from": {
"kind": "DockerImage",
- "name": "openshift/wildfly-100-centos7:latest"
+ "name": "docker.io/openshift/wildfly-100-centos7:latest"
}
},
{
@@ -581,7 +631,7 @@
},
"from": {
"kind": "DockerImage",
- "name": "openshift/wildfly-101-centos7:latest"
+ "name": "docker.io/openshift/wildfly-101-centos7:latest"
}
}
]
@@ -624,7 +674,7 @@
},
"from": {
"kind": "DockerImage",
- "name": "openshift/mysql-55-centos7:latest"
+ "name": "docker.io/openshift/mysql-55-centos7:latest"
}
},
{
@@ -639,7 +689,7 @@
},
"from": {
"kind": "DockerImage",
- "name": "centos/mysql-56-centos7:latest"
+ "name": "docker.io/centos/mysql-56-centos7:latest"
}
},
{
@@ -654,7 +704,88 @@
},
"from": {
"kind": "DockerImage",
- "name": "centos/mysql-57-centos7:latest"
+ "name": "docker.io/centos/mysql-57-centos7:latest"
+ }
+ }
+ ]
+ }
+ },
+ {
+ "kind": "ImageStream",
+ "apiVersion": "v1",
+ "metadata": {
+ "name": "nginx",
+ "annotations": {
+ "openshift.io/display-name": "Nginx HTTP server and a reverse proxy (nginx)"
+ }
+ },
+ "spec": {
+ "tags": [
+ {
+ "name": "1.8",
+ "annotations": {
+ "openshift.io/display-name": "Nginx HTTP server and a reverse proxy 1.8",
+ "openshift.io/provider-display-name": "Red Hat, Inc.",
+ "description": "Build and serve static content via Nginx HTTP Server and a reverse proxy (nginx) on CentOS 7. For more information about using this builder image, including OpenShift considerations, see https://github.com/sclorg/nginx-container/blob/master/1.8/README.md.",
+ "iconClass": "icon-nginx",
+ "tags": "builder,nginx",
+ "supports":"nginx",
+ "sampleRepo": "https://github.com/sclorg/nginx-ex.git",
+ "version": "1.8"
+ },
+ "from": {
+ "kind": "DockerImage",
+ "name": "docker.io/centos/nginx-18-centos7:latest"
+ }
+ },
+ {
+ "name": "1.10",
+ "annotations": {
+ "openshift.io/display-name": "Nginx HTTP server and a reverse proxy 1.10",
+ "openshift.io/provider-display-name": "Red Hat, Inc.",
+ "description": "Build and serve static content via Nginx HTTP Server and a reverse proxy (nginx) on CentOS 7. For more information about using this builder image, including OpenShift considerations, see https://github.com/sclorg/nginx-container/blob/master/1.10/README.md.",
+ "iconClass": "icon-nginx",
+ "tags": "builder,nginx",
+ "supports":"nginx",
+ "sampleRepo": "https://github.com/sclorg/nginx-ex.git",
+ "version": "1.10"
+ },
+ "from": {
+ "kind": "DockerImage",
+ "name": "docker.io/centos/nginx-110-centos7:latest"
+ }
+ },
+ {
+ "name": "1.12",
+ "annotations": {
+ "openshift.io/display-name": "Nginx HTTP server and a reverse proxy 1.12",
+ "openshift.io/provider-display-name": "Red Hat, Inc.",
+ "description": "Build and serve static content via Nginx HTTP Server and a reverse proxy (nginx) on CentOS 7. For more information about using this builder image, including OpenShift considerations, see https://github.com/sclorg/nginx-container/blob/master/1.12/README.md.",
+ "iconClass": "icon-nginx",
+ "tags": "builder,nginx",
+ "supports":"nginx",
+ "sampleRepo": "https://github.com/sclorg/nginx-ex.git",
+ "version": "1.12"
+ },
+ "from": {
+ "kind": "DockerImage",
+ "name": "docker.io/centos/nginx-112-centos7:latest"
+ }
+ },
+ {
+ "name": "latest",
+ "annotations": {
+ "openshift.io/display-name": "Nginx HTTP server and a reverse proxy (Latest)",
+ "openshift.io/provider-display-name": "Red Hat, Inc.",
+ "description": "Build and serve static content via Nginx HTTP Server and a reverse proxy (nginx) on CentOS 7. For more information about using this builder image, including OpenShift considerations, see https://github.com/sclorg/nginx-container/blob/master/1.12/README.md.\n\nWARNING: By selecting this tag, your application will automatically update to use the latest version of Nginx available on OpenShift, including major versions updates.",
+ "iconClass": "icon-nginx",
+ "tags": "builder,nginx",
+ "supports":"nginx",
+ "sampleRepo": "https://github.com/sclorg/nginx-ex.git"
+ },
+ "from": {
+ "kind": "ImageStreamTag",
+ "name": "1.12"
}
}
]
@@ -676,13 +807,13 @@
"annotations": {
"openshift.io/display-name": "MariaDB (Latest)",
"openshift.io/provider-display-name": "Red Hat, Inc.",
- "description": "Provides a MariaDB database on CentOS 7. For more information about using this database image, including OpenShift considerations, see https://github.com/sclorg/mariadb-container/tree/master/10.1/README.md.\n\nWARNING: By selecting this tag, your application will automatically update to use the latest version of MariaDB available on OpenShift, including major versions updates.",
+ "description": "Provides a MariaDB database on CentOS 7. For more information about using this database image, including OpenShift considerations, see https://github.com/sclorg/mariadb-container/tree/master/10.2/README.md.\n\nWARNING: By selecting this tag, your application will automatically update to use the latest version of MariaDB available on OpenShift, including major versions updates.",
"iconClass": "icon-mariadb",
- "tags": "mariadb"
+ "tags": "database,mariadb"
},
"from": {
"kind": "ImageStreamTag",
- "name": "10.1"
+ "name": "10.2"
}
},
{
@@ -692,12 +823,27 @@
"openshift.io/provider-display-name": "Red Hat, Inc.",
"description": "Provides a MariaDB 10.1 database on CentOS 7. For more information about using this database image, including OpenShift considerations, see https://github.com/sclorg/mariadb-container/tree/master/10.1/README.md.",
"iconClass": "icon-mariadb",
- "tags": "mariadb",
+ "tags": "database,mariadb",
"version": "10.1"
},
"from": {
"kind": "DockerImage",
- "name": "centos/mariadb-101-centos7:latest"
+ "name": "docker.io/centos/mariadb-101-centos7:latest"
+ }
+ },
+ {
+ "name": "10.2",
+ "annotations": {
+ "openshift.io/display-name": "MariaDB 10.2",
+ "openshift.io/provider-display-name": "Red Hat, Inc.",
+ "description": "Provides a MariaDB 10.2 database on CentOS 7. For more information about using this database image, including OpenShift considerations, see https://github.com/sclorg/mariadb-container/tree/master/10.2/README.md.",
+ "iconClass": "icon-mariadb",
+ "tags": "database,mariadb",
+ "version": "10.2"
+ },
+ "from": {
+ "kind": "DockerImage",
+ "name": "docker.io/centos/mariadb-102-centos7:latest"
}
}
]
@@ -719,13 +865,13 @@
"annotations": {
"openshift.io/display-name": "PostgreSQL (Latest)",
"openshift.io/provider-display-name": "Red Hat, Inc.",
- "description": "Provides a PostgreSQL database on CentOS 7. For more information about using this database image, including OpenShift considerations, see https://github.com/sclorg/postgresql-container/tree/master/9.5.\n\nWARNING: By selecting this tag, your application will automatically update to use the latest version of PostgreSQL available on OpenShift, including major versions updates.",
+ "description": "Provides a PostgreSQL database on CentOS 7. For more information about using this database image, including OpenShift considerations, see https://github.com/sclorg/postgresql-container/tree/master/9.6/README.md.\n\nWARNING: By selecting this tag, your application will automatically update to use the latest version of PostgreSQL available on OpenShift, including major versions updates.",
"iconClass": "icon-postgresql",
- "tags": "postgresql"
+ "tags": "database,postgresql"
},
"from": {
"kind": "ImageStreamTag",
- "name": "9.5"
+ "name": "9.6"
}
},
{
@@ -733,14 +879,14 @@
"annotations": {
"openshift.io/display-name": "PostgreSQL 9.2",
"openshift.io/provider-display-name": "Red Hat, Inc.",
- "description": "Provides a PostgreSQL 9.2 database on CentOS 7. For more information about using this database image, including OpenShift considerations, see https://github.com/sclorg/postgresql-container/tree/master/9.2.",
+ "description": "Provides a PostgreSQL 9.2 database on CentOS 7. For more information about using this database image, including OpenShift considerations, see https://github.com/sclorg/postgresql-container/tree/master/9.2/README.md.",
"iconClass": "icon-postgresql",
"tags": "hidden,postgresql",
"version": "9.2"
},
"from": {
"kind": "DockerImage",
- "name": "openshift/postgresql-92-centos7:latest"
+ "name": "docker.io/openshift/postgresql-92-centos7:latest"
}
},
{
@@ -748,14 +894,14 @@
"annotations": {
"openshift.io/display-name": "PostgreSQL 9.4",
"openshift.io/provider-display-name": "Red Hat, Inc.",
- "description": "Provides a PostgreSQL 9.4 database on CentOS 7. For more information about using this database image, including OpenShift considerations, see https://github.com/sclorg/postgresql-container/tree/master/9.4.",
+ "description": "Provides a PostgreSQL 9.4 database on CentOS 7. For more information about using this database image, including OpenShift considerations, see https://github.com/sclorg/postgresql-container/tree/master/9.4/README.md.",
"iconClass": "icon-postgresql",
- "tags": "postgresql",
+ "tags": "database,postgresql",
"version": "9.4"
},
"from": {
"kind": "DockerImage",
- "name": "centos/postgresql-94-centos7:latest"
+ "name": "docker.io/centos/postgresql-94-centos7:latest"
}
},
{
@@ -763,14 +909,29 @@
"annotations": {
"openshift.io/display-name": "PostgreSQL 9.5",
"openshift.io/provider-display-name": "Red Hat, Inc.",
- "description": "Provides a PostgreSQL 9.5 database on CentOS 7. For more information about using this database image, including OpenShift considerations, see https://github.com/sclorg/postgresql-container/tree/master/9.5.",
+ "description": "Provides a PostgreSQL 9.5 database on CentOS 7. For more information about using this database image, including OpenShift considerations, see https://github.com/sclorg/postgresql-container/tree/master/9.5/README.md.",
"iconClass": "icon-postgresql",
- "tags": "postgresql",
+ "tags": "database,postgresql",
"version": "9.5"
},
"from": {
"kind": "DockerImage",
- "name": "centos/postgresql-95-centos7:latest"
+ "name": "docker.io/centos/postgresql-95-centos7:latest"
+ }
+ },
+ {
+ "name": "9.6",
+ "annotations": {
+ "openshift.io/display-name": "PostgreSQL 9.6",
+ "openshift.io/provider-display-name": "Red Hat, Inc.",
+ "description": "Provides a PostgreSQL 9.6 database on CentOS 7. For more information about using this database image, including OpenShift considerations, see https://github.com/sclorg/postgresql-container/tree/master/9.6/README.md.",
+ "iconClass": "icon-postgresql",
+ "tags": "database,postgresql",
+ "version": "9.6"
+ },
+ "from": {
+ "kind": "DockerImage",
+ "name": "docker.io/centos/postgresql-96-centos7:latest"
}
}
]
@@ -792,13 +953,13 @@
"annotations": {
"openshift.io/display-name": "MongoDB (Latest)",
"openshift.io/provider-display-name": "Red Hat, Inc.",
- "description": "Provides a MongoDB database on CentOS 7. For more information about using this database image, including OpenShift considerations, see https://github.com/sclorg/mongodb-container/tree/master/3.2/README.md.\n\nWARNING: By selecting this tag, your application will automatically update to use the latest version of MongoDB available on OpenShift, including major versions updates.",
+ "description": "Provides a MongoDB database on CentOS 7. For more information about using this database image, including OpenShift considerations, see https://github.com/sclorg/mongodb-container/tree/master/3.4/README.md.\n\nWARNING: By selecting this tag, your application will automatically update to use the latest version of MongoDB available on OpenShift, including major versions updates.",
"iconClass": "icon-mongodb",
- "tags": "mongodb"
+ "tags": "database,mongodb"
},
"from": {
"kind": "ImageStreamTag",
- "name": "3.2"
+ "name": "3.4"
}
},
{
@@ -813,7 +974,7 @@
},
"from": {
"kind": "DockerImage",
- "name": "openshift/mongodb-24-centos7:latest"
+ "name": "docker.io/openshift/mongodb-24-centos7:latest"
}
},
{
@@ -823,12 +984,12 @@
"openshift.io/provider-display-name": "Red Hat, Inc.",
"description": "Provides a MongoDB 2.6 database on CentOS 7. For more information about using this database image, including OpenShift considerations, see https://github.com/sclorg/mongodb-container/tree/master/2.6/README.md.",
"iconClass": "icon-mongodb",
- "tags": "mongodb",
+ "tags": "database,mongodb",
"version": "2.6"
},
"from": {
"kind": "DockerImage",
- "name": "centos/mongodb-26-centos7:latest"
+ "name": "docker.io/centos/mongodb-26-centos7:latest"
}
},
{
@@ -838,12 +999,27 @@
"openshift.io/provider-display-name": "Red Hat, Inc.",
"description": "Provides a MongoDB 3.2 database on CentOS 7. For more information about using this database image, including OpenShift considerations, see https://github.com/sclorg/mongodb-container/tree/master/3.2/README.md.",
"iconClass": "icon-mongodb",
- "tags": "mongodb",
+ "tags": "database,mongodb",
"version": "3.2"
},
"from": {
"kind": "DockerImage",
- "name": "centos/mongodb-32-centos7:latest"
+ "name": "docker.io/centos/mongodb-32-centos7:latest"
+ }
+ },
+ {
+ "name": "3.4",
+ "annotations": {
+ "openshift.io/display-name": "MongoDB 3.4",
+ "openshift.io/provider-display-name": "Red Hat, Inc.",
+ "description": "Provides a MongoDB 3.4 database on CentOS 7. For more information about using this database image, including OpenShift considerations, see https://github.com/sclorg/mongodb-container/tree/master/3.4/README.md.",
+ "iconClass": "icon-mongodb",
+ "tags": "database,mongodb",
+ "version": "3.4"
+ },
+ "from": {
+ "kind": "DockerImage",
+ "name": "docker.io/centos/mongodb-34-centos7:latest"
}
}
]
@@ -886,7 +1062,7 @@
},
"from": {
"kind": "DockerImage",
- "name": "centos/redis-32-centos7:latest"
+ "name": "docker.io/centos/redis-32-centos7:latest"
}
}
]
@@ -929,7 +1105,7 @@
},
"from": {
"kind": "DockerImage",
- "name": "openshift/jenkins-1-centos7:latest"
+ "name": "docker.io/openshift/jenkins-1-centos7:latest"
}
},
{
@@ -944,7 +1120,7 @@
},
"from": {
"kind": "DockerImage",
- "name": "openshift/jenkins-2-centos7:latest"
+ "name": "docker.io/openshift/jenkins-2-centos7:v3.9"
}
}
]
diff --git a/roles/openshift_examples/files/examples/v3.9/image-streams/image-streams-rhel7.json b/roles/openshift_examples/files/examples/v3.9/image-streams/image-streams-rhel7.json
index 2b082fc75..af319beed 100644
--- a/roles/openshift_examples/files/examples/v3.9/image-streams/image-streams-rhel7.json
+++ b/roles/openshift_examples/files/examples/v3.9/image-streams/image-streams-rhel7.json
@@ -164,7 +164,7 @@
"annotations": {
"openshift.io/display-name": "Node.js (Latest)",
"openshift.io/provider-display-name": "Red Hat, Inc.",
- "description": "Build and run Node.js applications on RHEL 7. For more information about using this builder image, including OpenShift considerations, see https://github.com/sclorg/s2i-nodejs-container/blob/master/4/README.md.\n\nWARNING: By selecting this tag, your application will automatically update to use the latest version of Node.js available on OpenShift, including major versions updates.",
+ "description": "Build and run Node.js applications on RHEL 7. For more information about using this builder image, including OpenShift considerations, see https://github.com/sclorg/s2i-nodejs-container/blob/master/8/README.md.\n\nWARNING: By selecting this tag, your application will automatically update to use the latest version of Node.js available on OpenShift, including major versions updates.",
"iconClass": "icon-nodejs",
"tags": "builder,nodejs",
"supports":"nodejs",
@@ -172,7 +172,7 @@
},
"from": {
"kind": "ImageStreamTag",
- "name": "6"
+ "name": "8"
}
},
{
@@ -225,6 +225,22 @@
"kind": "DockerImage",
"name": "registry.access.redhat.com/rhscl/nodejs-6-rhel7:latest"
}
+ },
+ {
+ "name": "8",
+ "annotations": {
+ "openshift.io/display-name": "Node.js 8",
+ "openshift.io/provider-display-name": "Red Hat, Inc.",
+ "description": "Build and run Node.js 8 applications on RHEL 7. For more information about using this builder image, including OpenShift considerations, see https://github.com/sclorg/s2i-nodejs-container.",
+ "iconClass": "icon-nodejs",
+ "tags": "builder,nodejs",
+ "version": "8",
+ "sampleRepo": "https://github.com/openshift/nodejs-ex.git"
+ },
+ "from": {
+ "kind": "DockerImage",
+ "name": "registry.access.redhat.com/rhscl/nodejs-8-rhel7:latest"
+ }
}
]
}
@@ -326,7 +342,7 @@
"annotations": {
"openshift.io/display-name": "PHP (Latest)",
"openshift.io/provider-display-name": "Red Hat, Inc.",
- "description": "Build and run PHP applications on RHEL 7. For more information about using this builder image, including OpenShift considerations, see https://github.com/sclorg/s2i-php-container/blob/master/5.6/README.md.\n\nWARNING: By selecting this tag, your application will automatically update to use the latest version of PHP available on OpenShift, including major versions updates.",
+ "description": "Build and run PHP applications on RHEL 7. For more information about using this builder image, including OpenShift considerations, see https://github.com/sclorg/s2i-php-container/blob/master/7.1/README.md.\n\nWARNING: By selecting this tag, your application will automatically update to use the latest version of PHP available on OpenShift, including major versions updates.",
"iconClass": "icon-php",
"tags": "builder,php",
"supports":"php",
@@ -334,7 +350,7 @@
},
"from": {
"kind": "ImageStreamTag",
- "name": "7.0"
+ "name": "7.1"
}
},
{
@@ -387,6 +403,23 @@
"kind": "DockerImage",
"name": "registry.access.redhat.com/rhscl/php-70-rhel7:latest"
}
+ },
+ {
+ "name": "7.1",
+ "annotations": {
+ "openshift.io/display-name": "PHP 7.1",
+ "openshift.io/provider-display-name": "Red Hat, Inc.",
+ "description": "Build and run PHP 7.1 applications on RHEL 7. For more information about using this builder image, including OpenShift considerations, see https://github.com/sclorg/s2i-php-container/blob/master/7.1/README.md.",
+ "iconClass": "icon-php",
+ "tags": "builder,php",
+ "supports":"php:7.1,php",
+ "version": "7.1",
+ "sampleRepo": "https://github.com/openshift/cakephp-ex.git"
+ },
+ "from": {
+ "kind": "DockerImage",
+ "name": "registry.access.redhat.com/rhscl/php-71-rhel7:latest"
+ }
}
]
}
@@ -407,7 +440,7 @@
"annotations": {
"openshift.io/display-name": "Python (Latest)",
"openshift.io/provider-display-name": "Red Hat, Inc.",
- "description": "Build and run Python applications on RHEL 7. For more information about using this builder image, including OpenShift considerations, see https://github.com/sclorg/s2i-python-container/blob/master/3.5/README.md.\n\nWARNING: By selecting this tag, your application will automatically update to use the latest version of Python available on OpenShift, including major versions updates.",
+ "description": "Build and run Python applications on RHEL 7. For more information about using this builder image, including OpenShift considerations, see https://github.com/sclorg/s2i-python-container/blob/master/3.6/README.md.\n\nWARNING: By selecting this tag, your application will automatically update to use the latest version of Python available on OpenShift, including major versions updates.",
"iconClass": "icon-python",
"tags": "builder,python",
"supports":"python",
@@ -415,7 +448,7 @@
},
"from": {
"kind": "ImageStreamTag",
- "name": "3.5"
+ "name": "3.6"
}
},
{
@@ -485,6 +518,23 @@
"kind": "DockerImage",
"name": "registry.access.redhat.com/rhscl/python-35-rhel7:latest"
}
+ },
+ {
+ "name": "3.6",
+ "annotations": {
+ "openshift.io/display-name": "Python 3.6",
+ "openshift.io/provider-display-name": "Red Hat, Inc.",
+ "description": "Build and run Python 3.6 applications on RHEL 7. For more information about using this builder image, including OpenShift considerations, see https://github.com/sclorg/s2i-python-container/blob/master/3.6/README.md.",
+ "iconClass": "icon-python",
+ "tags": "builder,python",
+ "supports":"python:3.6,python",
+ "version": "3.6",
+ "sampleRepo": "https://github.com/openshift/django-ex.git"
+ },
+ "from": {
+ "kind": "DockerImage",
+ "name": "registry.access.redhat.com/rhscl/python-36-rhel7:latest"
+ }
}
]
}
@@ -566,6 +616,87 @@
"kind": "ImageStream",
"apiVersion": "v1",
"metadata": {
+ "name": "nginx",
+ "annotations": {
+ "openshift.io/display-name": "Nginx HTTP server and a reverse proxy (nginx)"
+ }
+ },
+ "spec": {
+ "tags": [
+ {
+ "name": "1.8",
+ "annotations": {
+ "openshift.io/display-name": "Nginx HTTP server and a reverse proxy 1.8",
+ "openshift.io/provider-display-name": "Red Hat, Inc.",
+ "description": "Build and serve static content via Nginx HTTP server and a reverse proxy (nginx) on RHEL 7. For more information about using this builder image, including OpenShift considerations, see https://github.com/sclorg/nginx-container/blob/master/1.8/README.md.",
+ "iconClass": "icon-nginx",
+ "tags": "builder,nginx",
+ "supports":"nginx",
+ "sampleRepo": "https://github.com/sclorg/nginx-ex.git",
+ "version": "1.8"
+ },
+ "from": {
+ "kind": "DockerImage",
+ "name": "registry.access.redhat.com/rhscl/nginx-18-rhel7:latest"
+ }
+ },
+ {
+ "name": "1.10",
+ "annotations": {
+ "openshift.io/display-name": "Nginx HTTP server and a reverse proxy 1.10",
+ "openshift.io/provider-display-name": "Red Hat, Inc.",
+ "description": "Build and serve static content via Nginx HTTP server and a reverse proxy (nginx) on RHEL 7. For more information about using this builder image, including OpenShift considerations, see https://github.com/sclorg/nginx-container/blob/master/1.10/README.md.",
+ "iconClass": "icon-nginx",
+ "tags": "builder,nginx",
+ "supports":"nginx",
+ "sampleRepo": "https://github.com/sclorg/nginx-ex.git",
+ "version": "1.10"
+ },
+ "from": {
+ "kind": "DockerImage",
+ "name": "registry.access.redhat.com/rhscl/nginx-110-rhel7:latest"
+ }
+ },
+ {
+ "name": "1.12",
+ "annotations": {
+ "openshift.io/display-name": "Nginx HTTP server and a reverse proxy 1.12",
+ "openshift.io/provider-display-name": "Red Hat, Inc.",
+ "description": "Build and serve static content via Nginx HTTP server and a reverse proxy (nginx) on RHEL 7. For more information about using this builder image, including OpenShift considerations, see https://github.com/sclorg/nginx-container/blob/master/1.12/README.md.",
+ "iconClass": "icon-nginx",
+ "tags": "builder,nginx",
+ "supports":"nginx",
+ "sampleRepo": "https://github.com/sclorg/nginx-ex.git",
+ "version": "1.12"
+ },
+ "from": {
+ "kind": "DockerImage",
+ "name": "registry.access.redhat.com/rhscl/nginx-112-rhel7:latest"
+ }
+ },
+ {
+ "name": "latest",
+ "annotations": {
+ "openshift.io/display-name": "Nginx HTTP server and a reverse proxy (Latest)",
+ "openshift.io/provider-display-name": "Red Hat, Inc.",
+ "description": "Build and serve static content via Nginx HTTP server and a reverse proxy (nginx) on RHEL 7. For more information about using this builder image, including OpenShift considerations, see https://github.com/sclorg/nginx-container/blob/master/1.12/README.md.\n\nWARNING: By selecting this tag, your application will automatically update to use the latest version of Nginx available on OpenShift, including major versions updates.",
+ "iconClass": "icon-nginx",
+ "tags": "builder,nginx",
+ "supports":"nginx",
+ "sampleRepo": "https://github.com/sclorg/nginx-ex.git"
+ },
+ "from": {
+ "kind": "ImageStreamTag",
+ "name": "1.12"
+ }
+ }
+ ]
+ }
+ },
+ {
+ "kind": "ImageStream",
+ "apiVersion": "v1",
+ "metadata": {
"name": "mariadb",
"annotations": {
"openshift.io/display-name": "MariaDB"
@@ -578,13 +709,13 @@
"annotations": {
"openshift.io/display-name": "MariaDB (Latest)",
"openshift.io/provider-display-name": "Red Hat, Inc.",
- "description": "Provides a MariaDB database on RHEL 7. For more information about using this database image, including OpenShift considerations, see https://github.com/sclorg/mariadb-container/tree/master/10.1/README.md.\n\nWARNING: By selecting this tag, your application will automatically update to use the latest version of MariaDB available on OpenShift, including major versions updates.",
+ "description": "Provides a MariaDB database on RHEL 7. For more information about using this database image, including OpenShift considerations, see https://github.com/sclorg/mariadb-container/tree/master/10.2/README.md.\n\nWARNING: By selecting this tag, your application will automatically update to use the latest version of MariaDB available on OpenShift, including major versions updates.",
"iconClass": "icon-mariadb",
- "tags": "mariadb"
+ "tags": "database,mariadb"
},
"from": {
"kind": "ImageStreamTag",
- "name": "10.1"
+ "name": "10.2"
}
},
{
@@ -594,13 +725,28 @@
"openshift.io/provider-display-name": "Red Hat, Inc.",
"description": "Provides a MariaDB 10.1 database on RHEL 7. For more information about using this database image, including OpenShift considerations, see https://github.com/sclorg/mariadb-container/tree/master/10.1/README.md.",
"iconClass": "icon-mariadb",
- "tags": "mariadb",
+ "tags": "database,mariadb",
"version": "10.1"
},
"from": {
"kind": "DockerImage",
"name": "registry.access.redhat.com/rhscl/mariadb-101-rhel7:latest"
}
+ },
+ {
+ "name": "10.2",
+ "annotations": {
+ "openshift.io/display-name": "MariaDB 10.2",
+ "openshift.io/provider-display-name": "Red Hat, Inc.",
+ "description": "Provides a MariaDB 10.2 database on RHEL 7. For more information about using this database image, including OpenShift considerations, see https://github.com/sclorg/mariadb-container/tree/master/10.2/README.md.",
+ "iconClass": "icon-mariadb",
+ "tags": "database,mariadb",
+ "version": "10.2"
+ },
+ "from": {
+ "kind": "DockerImage",
+ "name": "registry.access.redhat.com/rhscl/mariadb-102-rhel7:latest"
+ }
}
]
}
@@ -621,13 +767,13 @@
"annotations": {
"openshift.io/display-name": "PostgreSQL (Latest)",
"openshift.io/provider-display-name": "Red Hat, Inc.",
- "description": "Provides a PostgreSQL database on RHEL 7. For more information about using this database image, including OpenShift considerations, see https://github.com/sclorg/postgresql-container/tree/master/9.5.\n\nWARNING: By selecting this tag, your application will automatically update to use the latest version of PostgreSQL available on OpenShift, including major versions updates.",
+ "description": "Provides a PostgreSQL database on RHEL 7. For more information about using this database image, including OpenShift considerations, see https://github.com/sclorg/postgresql-container/tree/master/9.6/README.md.\n\nWARNING: By selecting this tag, your application will automatically update to use the latest version of PostgreSQL available on OpenShift, including major versions updates.",
"iconClass": "icon-postgresql",
- "tags": "postgresql"
+ "tags": "database,postgresql"
},
"from": {
"kind": "ImageStreamTag",
- "name": "9.5"
+ "name": "9.6"
}
},
{
@@ -635,7 +781,7 @@
"annotations": {
"openshift.io/display-name": "PostgreSQL 9.2",
"openshift.io/provider-display-name": "Red Hat, Inc.",
- "description": "Provides a PostgreSQL 9.2 database on RHEL 7. For more information about using this database image, including OpenShift considerations, see https://github.com/sclorg/postgresql-container/tree/master/9.2.",
+ "description": "Provides a PostgreSQL 9.2 database on RHEL 7. For more information about using this database image, including OpenShift considerations, see https://github.com/sclorg/postgresql-container/tree/master/9.2/README.md.",
"iconClass": "icon-postgresql",
"tags": "hidden,postgresql",
"version": "9.2"
@@ -650,9 +796,9 @@
"annotations": {
"openshift.io/display-name": "PostgreSQL 9.4",
"openshift.io/provider-display-name": "Red Hat, Inc.",
- "description": "Provides a PostgreSQL 9.4 database on RHEL 7. For more information about using this database image, including OpenShift considerations, see https://github.com/sclorg/postgresql-container/tree/master/9.4.",
+ "description": "Provides a PostgreSQL 9.4 database on RHEL 7. For more information about using this database image, including OpenShift considerations, see https://github.com/sclorg/postgresql-container/tree/master/9.4/README.md.",
"iconClass": "icon-postgresql",
- "tags": "postgresql",
+ "tags": "database,postgresql",
"version": "9.4"
},
"from": {
@@ -665,15 +811,30 @@
"annotations": {
"openshift.io/display-name": "PostgreSQL 9.5",
"openshift.io/provider-display-name": "Red Hat, Inc.",
- "description": "Provides a PostgreSQL 9.5 database on RHEL 7. For more information about using this database image, including OpenShift considerations, see https://github.com/sclorg/postgresql-container/tree/master/9.5.",
+ "description": "Provides a PostgreSQL 9.5 database on RHEL 7. For more information about using this database image, including OpenShift considerations, see https://github.com/sclorg/postgresql-container/tree/master/9.5/README.md.",
"iconClass": "icon-postgresql",
- "tags": "postgresql",
+ "tags": "database,postgresql",
"version": "9.5"
},
"from": {
"kind": "DockerImage",
"name": "registry.access.redhat.com/rhscl/postgresql-95-rhel7:latest"
}
+ },
+ {
+ "name": "9.6",
+ "annotations": {
+ "openshift.io/display-name": "PostgreSQL (Ephemeral) 9.6",
+ "openshift.io/provider-display-name": "Red Hat, Inc.",
+ "description": "Provides a PostgreSQL 9.6 database on RHEL 7. For more information about using this database image, including OpenShift considerations, see https://github.com/sclorg/postgresql-container/tree/master/9.6/README.md.",
+ "iconClass": "icon-postgresql",
+ "tags": "database,postgresql",
+ "version": "9.6"
+ },
+ "from": {
+ "kind": "DockerImage",
+ "name": "registry.access.redhat.com/rhscl/postgresql-96-rhel7:latest"
+ }
}
]
}
@@ -694,13 +855,13 @@
"annotations": {
"openshift.io/display-name": "MongoDB (Latest)",
"openshift.io/provider-display-name": "Red Hat, Inc.",
- "description": "Provides a MongoDB database on RHEL 7. For more information about using this database image, including OpenShift considerations, see https://github.com/sclorg/mongodb-container/tree/master/3.2/README.md.\n\nWARNING: By selecting this tag, your application will automatically update to use the latest version of MongoDB available on OpenShift, including major versions updates.",
+ "description": "Provides a MongoDB database on RHEL 7. For more information about using this database image, including OpenShift considerations, see https://github.com/sclorg/mongodb-container/tree/master/3.4/README.md.\n\nWARNING: By selecting this tag, your application will automatically update to use the latest version of MongoDB available on OpenShift, including major versions updates.",
"iconClass": "icon-mongodb",
"tags": "mongodb"
},
"from": {
"kind": "ImageStreamTag",
- "name": "3.2"
+ "name": "3.4"
}
},
{
@@ -725,7 +886,7 @@
"openshift.io/provider-display-name": "Red Hat, Inc.",
"description": "Provides a MongoDB 2.6 database on RHEL 7. For more information about using this database image, including OpenShift considerations, see https://github.com/sclorg/mongodb-container/tree/master/2.6/README.md.",
"iconClass": "icon-mongodb",
- "tags": "mongodb",
+ "tags": "database,mongodb",
"version": "2.6"
},
"from": {
@@ -740,13 +901,28 @@
"openshift.io/provider-display-name": "Red Hat, Inc.",
"description": "Provides a MongoDB 3.2 database on RHEL 7. For more information about using this database image, including OpenShift considerations, see https://github.com/sclorg/mongodb-container/tree/master/3.2/README.md.",
"iconClass": "icon-mongodb",
- "tags": "mongodb",
+ "tags": "database,mongodb",
"version": "3.2"
},
"from": {
"kind": "DockerImage",
"name": "registry.access.redhat.com/rhscl/mongodb-32-rhel7:latest"
}
+ },
+ {
+ "name": "3.4",
+ "annotations": {
+ "openshift.io/display-name": "MongoDB 3.4",
+ "openshift.io/provider-display-name": "Red Hat, Inc.",
+ "description": "Provides a MongoDB 3.4 database on RHEL 7. For more information about using this database image, including OpenShift considerations, see https://github.com/sclorg/mongodb-container/tree/master/3.4/README.md.",
+ "iconClass": "icon-mongodb",
+ "tags": "database,mongodb",
+ "version": "3.4"
+ },
+ "from": {
+ "kind": "DockerImage",
+ "name": "registry.access.redhat.com/rhscl/mongodb-34-rhel7:latest"
+ }
}
]
}
@@ -846,7 +1022,7 @@
},
"from": {
"kind": "DockerImage",
- "name": "registry.access.redhat.com/openshift3/jenkins-2-rhel7:latest"
+ "name": "registry.access.redhat.com/openshift3/jenkins-2-rhel7:v3.9"
}
}
]
diff --git a/roles/openshift_examples/files/examples/v3.9/quickstart-templates/README.md b/roles/openshift_examples/files/examples/v3.9/quickstart-templates/README.md
index 6d2ccbf7f..710d5f58d 100644
--- a/roles/openshift_examples/files/examples/v3.9/quickstart-templates/README.md
+++ b/roles/openshift_examples/files/examples/v3.9/quickstart-templates/README.md
@@ -18,6 +18,7 @@ instantiating them.
* [Django](https://raw.githubusercontent.com/openshift/django-ex/master/openshift/templates/django-postgresql.json) - Provides a basic Django (Python) application with a PostgreSQL database. For more information see the [source repository](https://github.com/openshift/django-ex).
* [Django persistent](https://raw.githubusercontent.com/openshift/django-ex/master/openshift/templates/django-postgresql-persistent.json) - Provides a basic Django (Python) application with a persistent PostgreSQL database. Note: requires available persistent volumes. For more information see the [source repository](https://github.com/openshift/django-ex).
* [Httpd](https://raw.githubusercontent.com/openshift/httpd-ex/master/openshift/templates/httpd.json) - Provides a basic Httpd static content application. For more information see the [source repository](https://github.com/openshift/httpd-ex).
+* [Nginx](https://raw.githubusercontent.com/sclorg/nginx-ex/master/openshift/templates/nginx.json) - Provides a basic Nginx static content application. For more information see the [source repository](https://github.com/sclorg/nginx-ex).
* [NodeJS](https://raw.githubusercontent.com/openshift/nodejs-ex/master/openshift/templates/nodejs-mongodb.json) - Provides a basic NodeJS application with a MongoDB database. For more information see the [source repository](https://github.com/openshift/nodejs-ex).
* [NodeJS persistent](https://raw.githubusercontent.com/openshift/nodejs-ex/master/openshift/templates/nodejs-mongodb-persistent.json) - Provides a basic NodeJS application with a persistent MongoDB database. Note: requires available persistent volumes. For more information see the [source repository](https://github.com/openshift/nodejs-ex).
* [Rails](https://raw.githubusercontent.com/openshift/rails-ex/master/openshift/templates/rails-postgresql.json) - Provides a basic Rails (Ruby) application with a PostgreSQL database. For more information see the [source repository](https://github.com/openshift/rails-ex).
diff --git a/roles/openshift_examples/files/examples/v3.9/quickstart-templates/cakephp-mysql-persistent.json b/roles/openshift_examples/files/examples/v3.9/quickstart-templates/cakephp-mysql-persistent.json
index 86ddc184a..8888f19d0 100644
--- a/roles/openshift_examples/files/examples/v3.9/quickstart-templates/cakephp-mysql-persistent.json
+++ b/roles/openshift_examples/files/examples/v3.9/quickstart-templates/cakephp-mysql-persistent.json
@@ -4,7 +4,7 @@
"metadata": {
"name": "cakephp-mysql-persistent",
"annotations": {
- "openshift.io/display-name": "CakePHP + MySQL (Persistent)",
+ "openshift.io/display-name": "CakePHP + MySQL",
"description": "An example CakePHP application with a MySQL database. For more information about using this template, including OpenShift considerations, see https://github.com/openshift/cakephp-ex/blob/master/README.md.",
"tags": "quickstart,php,cakephp",
"iconClass": "icon-php",
@@ -17,7 +17,8 @@
},
"message": "The following service(s) have been created in your project: ${NAME}, ${DATABASE_SERVICE_NAME}.\n\nFor more information about using this template, including OpenShift considerations, see https://github.com/openshift/cake-ex/blob/master/README.md.",
"labels": {
- "template": "cakephp-mysql-persistent"
+ "template": "cakephp-mysql-persistent",
+ "app": "cakephp-mysql-persistent"
},
"objects": [
{
@@ -208,6 +209,7 @@
"readinessProbe": {
"timeoutSeconds": 3,
"initialDelaySeconds": 3,
+ "periodSeconds": 60,
"httpGet": {
"path": "/health.php",
"port": 8080
@@ -216,6 +218,7 @@
"livenessProbe": {
"timeoutSeconds": 3,
"initialDelaySeconds": 30,
+ "periodSeconds": 60,
"httpGet": {
"path": "/health.php",
"port": 8080
diff --git a/roles/openshift_examples/files/examples/v3.9/quickstart-templates/cakephp-mysql.json b/roles/openshift_examples/files/examples/v3.9/quickstart-templates/cakephp-mysql.json
index 3c964bd6a..2bf7acd8c 100644
--- a/roles/openshift_examples/files/examples/v3.9/quickstart-templates/cakephp-mysql.json
+++ b/roles/openshift_examples/files/examples/v3.9/quickstart-templates/cakephp-mysql.json
@@ -17,7 +17,8 @@
},
"message": "The following service(s) have been created in your project: ${NAME}, ${DATABASE_SERVICE_NAME}.\n\nFor more information about using this template, including OpenShift considerations, see https://github.com/openshift/cake-ex/blob/master/README.md.",
"labels": {
- "template": "cakephp-mysql-example"
+ "template": "cakephp-mysql-example",
+ "app": "cakephp-mysql-example"
},
"objects": [
{
@@ -208,6 +209,7 @@
"readinessProbe": {
"timeoutSeconds": 3,
"initialDelaySeconds": 3,
+ "periodSeconds": 60,
"httpGet": {
"path": "/health.php",
"port": 8080
@@ -216,6 +218,7 @@
"livenessProbe": {
"timeoutSeconds": 3,
"initialDelaySeconds": 30,
+ "periodSeconds": 60,
"httpGet": {
"path": "/health.php",
"port": 8080
diff --git a/roles/openshift_examples/files/examples/v3.9/quickstart-templates/dancer-mysql-persistent.json b/roles/openshift_examples/files/examples/v3.9/quickstart-templates/dancer-mysql-persistent.json
index 0a10c5fbc..b29f8ba40 100644
--- a/roles/openshift_examples/files/examples/v3.9/quickstart-templates/dancer-mysql-persistent.json
+++ b/roles/openshift_examples/files/examples/v3.9/quickstart-templates/dancer-mysql-persistent.json
@@ -4,7 +4,7 @@
"metadata": {
"name": "dancer-mysql-persistent",
"annotations": {
- "openshift.io/display-name": "Dancer + MySQL (Persistent)",
+ "openshift.io/display-name": "Dancer + MySQL",
"description": "An example Dancer application with a MySQL database. For more information about using this template, including OpenShift considerations, see https://github.com/openshift/dancer-ex/blob/master/README.md.",
"tags": "quickstart,perl,dancer",
"iconClass": "icon-perl",
@@ -17,7 +17,8 @@
},
"message": "The following service(s) have been created in your project: ${NAME}, ${DATABASE_SERVICE_NAME}.\n\nFor more information about using this template, including OpenShift considerations, see https://github.com/openshift/dancer-ex/blob/master/README.md.",
"labels": {
- "template": "dancer-mysql-persistent"
+ "template": "dancer-mysql-persistent",
+ "app": "dancer-mysql-persistent"
},
"objects": [
{
diff --git a/roles/openshift_examples/files/examples/v3.9/quickstart-templates/dancer-mysql.json b/roles/openshift_examples/files/examples/v3.9/quickstart-templates/dancer-mysql.json
index 6122d5436..e76353764 100644
--- a/roles/openshift_examples/files/examples/v3.9/quickstart-templates/dancer-mysql.json
+++ b/roles/openshift_examples/files/examples/v3.9/quickstart-templates/dancer-mysql.json
@@ -17,7 +17,8 @@
},
"message": "The following service(s) have been created in your project: ${NAME}, ${DATABASE_SERVICE_NAME}.\n\nFor more information about using this template, including OpenShift considerations, see https://github.com/openshift/dancer-ex/blob/master/README.md.",
"labels": {
- "template": "dancer-mysql-example"
+ "template": "dancer-mysql-example",
+ "app": "dancer-mysql-example"
},
"objects": [
{
diff --git a/roles/openshift_examples/files/examples/v3.9/quickstart-templates/django-postgresql-persistent.json b/roles/openshift_examples/files/examples/v3.9/quickstart-templates/django-postgresql-persistent.json
index f3b5838fa..7a0ab213a 100644
--- a/roles/openshift_examples/files/examples/v3.9/quickstart-templates/django-postgresql-persistent.json
+++ b/roles/openshift_examples/files/examples/v3.9/quickstart-templates/django-postgresql-persistent.json
@@ -4,7 +4,7 @@
"metadata": {
"name": "django-psql-persistent",
"annotations": {
- "openshift.io/display-name": "Django + PostgreSQL (Persistent)",
+ "openshift.io/display-name": "Django + PostgreSQL",
"description": "An example Django application with a PostgreSQL database. For more information about using this template, including OpenShift considerations, see https://github.com/openshift/django-ex/blob/master/README.md.",
"tags": "quickstart,python,django",
"iconClass": "icon-python",
@@ -17,7 +17,8 @@
},
"message": "The following service(s) have been created in your project: ${NAME}, ${DATABASE_SERVICE_NAME}.\n\nFor more information about using this template, including OpenShift considerations, see https://github.com/openshift/django-ex/blob/master/README.md.",
"labels": {
- "template": "django-psql-persistent"
+ "template": "django-psql-persistent",
+ "app": "django-psql-persistent"
},
"objects": [
{
diff --git a/roles/openshift_examples/files/examples/v3.9/quickstart-templates/django-postgresql.json b/roles/openshift_examples/files/examples/v3.9/quickstart-templates/django-postgresql.json
index b21295df2..be3fc740c 100644
--- a/roles/openshift_examples/files/examples/v3.9/quickstart-templates/django-postgresql.json
+++ b/roles/openshift_examples/files/examples/v3.9/quickstart-templates/django-postgresql.json
@@ -17,7 +17,8 @@
},
"message": "The following service(s) have been created in your project: ${NAME}, ${DATABASE_SERVICE_NAME}.\n\nFor more information about using this template, including OpenShift considerations, see https://github.com/openshift/django-ex/blob/master/README.md.",
"labels": {
- "template": "django-psql-example"
+ "template": "django-psql-example",
+ "app": "django-psql-example"
},
"objects": [
{
diff --git a/roles/openshift_examples/files/examples/v3.9/quickstart-templates/httpd.json b/roles/openshift_examples/files/examples/v3.9/quickstart-templates/httpd.json
index 3771280bf..67ae3c751 100644
--- a/roles/openshift_examples/files/examples/v3.9/quickstart-templates/httpd.json
+++ b/roles/openshift_examples/files/examples/v3.9/quickstart-templates/httpd.json
@@ -17,7 +17,8 @@
},
"message": "The following service(s) have been created in your project: ${NAME}.\n\nFor more information about using this template, including OpenShift considerations, see https://github.com/openshift/httpd-ex/blob/master/README.md.",
"labels": {
- "template": "httpd-example"
+ "template": "httpd-example",
+ "app": "httpd-example"
},
"objects": [
{
@@ -198,12 +199,7 @@
}
},
"env": [
- ],
- "resources": {
- "limits": {
- "memory": "${MEMORY_LIMIT}"
- }
- }
+ ]
}
]
}
diff --git a/roles/openshift_examples/files/examples/v3.9/quickstart-templates/jenkins-ephemeral-template.json b/roles/openshift_examples/files/examples/v3.9/quickstart-templates/jenkins-ephemeral-template.json
index 28b4b9d81..87ae6ed14 100644
--- a/roles/openshift_examples/files/examples/v3.9/quickstart-templates/jenkins-ephemeral-template.json
+++ b/roles/openshift_examples/files/examples/v3.9/quickstart-templates/jenkins-ephemeral-template.json
@@ -15,6 +15,10 @@
}
},
"message": "A Jenkins service has been created in your project. Log into Jenkins with your OpenShift account. The tutorial at https://github.com/openshift/origin/blob/master/examples/jenkins/README.md contains more information about using this template.",
+ "labels": {
+ "app": "jenkins-ephemeral",
+ "template": "jenkins-ephemeral-template"
+ },
"objects": [
{
"kind": "Route",
@@ -275,10 +279,7 @@
"name": "JENKINS_IMAGE_STREAM_TAG",
"displayName": "Jenkins ImageStreamTag",
"description": "Name of the ImageStreamTag to be used for the Jenkins image.",
- "value": "jenkins:latest"
+ "value": "jenkins:2"
}
- ],
- "labels": {
- "template": "jenkins-ephemeral-template"
- }
+ ]
}
diff --git a/roles/openshift_examples/files/examples/v3.9/quickstart-templates/jenkins-persistent-template.json b/roles/openshift_examples/files/examples/v3.9/quickstart-templates/jenkins-persistent-template.json
index 4915bb12c..95d15b55f 100644
--- a/roles/openshift_examples/files/examples/v3.9/quickstart-templates/jenkins-persistent-template.json
+++ b/roles/openshift_examples/files/examples/v3.9/quickstart-templates/jenkins-persistent-template.json
@@ -4,7 +4,7 @@
"metadata": {
"name": "jenkins-persistent",
"annotations": {
- "openshift.io/display-name": "Jenkins (Persistent)",
+ "openshift.io/display-name": "Jenkins",
"description": "Jenkins service, with persistent storage.\n\nNOTE: You must have persistent volumes available in your cluster to use this template.",
"iconClass": "icon-jenkins",
"tags": "instant-app,jenkins",
@@ -15,6 +15,10 @@
}
},
"message": "A Jenkins service has been created in your project. Log into Jenkins with your OpenShift account. The tutorial at https://github.com/openshift/origin/blob/master/examples/jenkins/README.md contains more information about using this template.",
+ "labels": {
+ "app": "jenkins-persistent",
+ "template": "jenkins-persistent-template"
+ },
"objects": [
{
"kind": "Route",
@@ -299,10 +303,7 @@
"name": "JENKINS_IMAGE_STREAM_TAG",
"displayName": "Jenkins ImageStreamTag",
"description": "Name of the ImageStreamTag to be used for the Jenkins image.",
- "value": "jenkins:latest"
+ "value": "jenkins:2"
}
- ],
- "labels": {
- "template": "jenkins-persistent-template"
- }
+ ]
}
diff --git a/roles/openshift_examples/files/examples/v3.9/quickstart-templates/nginx.json b/roles/openshift_examples/files/examples/v3.9/quickstart-templates/nginx.json
new file mode 100644
index 000000000..84aa1f469
--- /dev/null
+++ b/roles/openshift_examples/files/examples/v3.9/quickstart-templates/nginx.json
@@ -0,0 +1,283 @@
+{
+ "kind": "Template",
+ "apiVersion": "v1",
+ "metadata": {
+ "name": "nginx-example",
+ "annotations": {
+ "openshift.io/display-name": "Nginx HTTP server and a reverse proxy",
+ "description": "An example Nginx HTTP server and a reverse proxy (nginx) application that serves static content. For more information about using this template, including OpenShift considerations, see https://github.com/sclorg/nginx-ex/blob/master/README.md.",
+ "tags": "quickstart,nginx",
+ "iconClass": "icon-nginx",
+ "openshift.io/long-description": "This template defines resources needed to develop a static application served by Nginx HTTP server and a reverse proxy (nginx), including a build configuration and application deployment configuration.",
+ "openshift.io/provider-display-name": "Red Hat, Inc.",
+ "openshift.io/documentation-url": "https://github.com/sclorg/nginx-ex",
+ "openshift.io/support-url": "https://access.redhat.com"
+ }
+ },
+ "message": "The following service(s) have been created in your project: ${NAME}.\n\nFor more information about using this template, including OpenShift considerations, see https://github.com/sclorg/nginx-ex/blob/master/README.md.",
+ "labels": {
+ "template": "nginx-example"
+ },
+ "objects": [
+ {
+ "kind": "Service",
+ "apiVersion": "v1",
+ "metadata": {
+ "name": "${NAME}",
+ "annotations": {
+ "description": "Exposes and load balances the application pods"
+ }
+ },
+ "spec": {
+ "ports": [
+ {
+ "name": "web",
+ "port": 8080,
+ "targetPort": 8080
+ }
+ ],
+ "selector": {
+ "name": "${NAME}"
+ }
+ }
+ },
+ {
+ "kind": "Route",
+ "apiVersion": "v1",
+ "metadata": {
+ "name": "${NAME}",
+ "annotations": {
+ "template.openshift.io/expose-uri": "http://{.spec.host}{.spec.path}"
+ }
+ },
+ "spec": {
+ "host": "${APPLICATION_DOMAIN}",
+ "to": {
+ "kind": "Service",
+ "name": "${NAME}"
+ }
+ }
+ },
+ {
+ "kind": "ImageStream",
+ "apiVersion": "v1",
+ "metadata": {
+ "name": "${NAME}",
+ "annotations": {
+ "description": "Keeps track of changes in the application image"
+ }
+ }
+ },
+ {
+ "kind": "BuildConfig",
+ "apiVersion": "v1",
+ "metadata": {
+ "name": "${NAME}",
+ "annotations": {
+ "description": "Defines how to build the application",
+ "template.alpha.openshift.io/wait-for-ready": "true"
+ }
+ },
+ "spec": {
+ "source": {
+ "type": "Git",
+ "git": {
+ "uri": "${SOURCE_REPOSITORY_URL}",
+ "ref": "${SOURCE_REPOSITORY_REF}"
+ },
+ "contextDir": "${CONTEXT_DIR}"
+ },
+ "strategy": {
+ "type": "Source",
+ "sourceStrategy": {
+ "from": {
+ "kind": "ImageStreamTag",
+ "namespace": "${NAMESPACE}",
+ "name": "nginx:${NGINX_VERSION}"
+ }
+ }
+ },
+ "output": {
+ "to": {
+ "kind": "ImageStreamTag",
+ "name": "${NAME}:latest"
+ }
+ },
+ "triggers": [
+ {
+ "type": "ImageChange"
+ },
+ {
+ "type": "ConfigChange"
+ },
+ {
+ "type": "GitHub",
+ "github": {
+ "secret": "${GITHUB_WEBHOOK_SECRET}"
+ }
+ },
+ {
+ "type": "Generic",
+ "generic": {
+ "secret": "${GENERIC_WEBHOOK_SECRET}"
+ }
+ }
+ ]
+ }
+ },
+ {
+ "kind": "DeploymentConfig",
+ "apiVersion": "v1",
+ "metadata": {
+ "name": "${NAME}",
+ "annotations": {
+ "description": "Defines how to deploy the application server",
+ "template.alpha.openshift.io/wait-for-ready": "true"
+ }
+ },
+ "spec": {
+ "strategy": {
+ "type": "Rolling"
+ },
+ "triggers": [
+ {
+ "type": "ImageChange",
+ "imageChangeParams": {
+ "automatic": true,
+ "containerNames": [
+ "nginx-example"
+ ],
+ "from": {
+ "kind": "ImageStreamTag",
+ "name": "${NAME}:latest"
+ }
+ }
+ },
+ {
+ "type": "ConfigChange"
+ }
+ ],
+ "replicas": 1,
+ "selector": {
+ "name": "${NAME}"
+ },
+ "template": {
+ "metadata": {
+ "name": "${NAME}",
+ "labels": {
+ "name": "${NAME}"
+ }
+ },
+ "spec": {
+ "containers": [
+ {
+ "name": "nginx-example",
+ "image": " ",
+ "ports": [
+ {
+ "containerPort": 8080
+ }
+ ],
+ "readinessProbe": {
+ "timeoutSeconds": 3,
+ "initialDelaySeconds": 3,
+ "httpGet": {
+ "path": "/",
+ "port": 8080
+ }
+ },
+ "livenessProbe": {
+ "timeoutSeconds": 3,
+ "initialDelaySeconds": 30,
+ "httpGet": {
+ "path": "/",
+ "port": 8080
+ }
+ },
+ "resources": {
+ "limits": {
+ "memory": "${MEMORY_LIMIT}"
+ }
+ },
+ "env": [
+ ],
+ "resources": {
+ "limits": {
+ "memory": "${MEMORY_LIMIT}"
+ }
+ }
+ }
+ ]
+ }
+ }
+ }
+ }
+ ],
+ "parameters": [
+ {
+ "name": "NAME",
+ "displayName": "Name",
+ "description": "The name assigned to all of the frontend objects defined in this template.",
+ "required": true,
+ "value": "nginx-example"
+ },
+ {
+ "name": "NAMESPACE",
+ "displayName": "Namespace",
+ "description": "The OpenShift Namespace where the ImageStream resides.",
+ "required": true,
+ "value": "openshift"
+ },
+ {
+ "name": "NGINX_VERSION",
+ "displayName": "NGINX Version",
+ "description": "Version of NGINX image to be used (1.12 by default).",
+ "required": true,
+ "value": "1.12"
+ },
+ {
+ "name": "MEMORY_LIMIT",
+ "displayName": "Memory Limit",
+ "description": "Maximum amount of memory the container can use.",
+ "required": true,
+ "value": "512Mi"
+ },
+ {
+ "name": "SOURCE_REPOSITORY_URL",
+ "displayName": "Git Repository URL",
+ "description": "The URL of the repository with your application source code.",
+ "required": true,
+ "value": "https://github.com/sclorg/nginx-ex.git"
+ },
+ {
+ "name": "SOURCE_REPOSITORY_REF",
+ "displayName": "Git Reference",
+ "description": "Set this to a branch name, tag or other ref of your repository if you are not using the default branch."
+ },
+ {
+ "name": "CONTEXT_DIR",
+ "displayName": "Context Directory",
+ "description": "Set this to the relative path to your project if it is not in the root of your repository."
+ },
+ {
+ "name": "APPLICATION_DOMAIN",
+ "displayName": "Application Hostname",
+ "description": "The exposed hostname that will route to the nginx service, if left blank a value will be defaulted.",
+ "value": ""
+ },
+ {
+ "name": "GITHUB_WEBHOOK_SECRET",
+ "displayName": "GitHub Webhook Secret",
+ "description": "Github trigger secret. A difficult to guess string encoded as part of the webhook URL. Not encrypted.",
+ "generate": "expression",
+ "from": "[a-zA-Z0-9]{40}"
+ },
+ {
+ "name": "GENERIC_WEBHOOK_SECRET",
+ "displayName": "Generic Webhook Secret",
+ "description": "A secret string used to configure the Generic webhook.",
+ "generate": "expression",
+ "from": "[a-zA-Z0-9]{40}"
+ }
+ ]
+}
diff --git a/roles/openshift_examples/files/examples/v3.9/quickstart-templates/nodejs-mongodb-persistent.json b/roles/openshift_examples/files/examples/v3.9/quickstart-templates/nodejs-mongodb-persistent.json
index 7f2a5d804..787f51361 100644
--- a/roles/openshift_examples/files/examples/v3.9/quickstart-templates/nodejs-mongodb-persistent.json
+++ b/roles/openshift_examples/files/examples/v3.9/quickstart-templates/nodejs-mongodb-persistent.json
@@ -4,7 +4,7 @@
"metadata": {
"name": "nodejs-mongo-persistent",
"annotations": {
- "openshift.io/display-name": "Node.js + MongoDB (Persistent)",
+ "openshift.io/display-name": "Node.js + MongoDB",
"description": "An example Node.js application with a MongoDB database. For more information about using this template, including OpenShift considerations, see https://github.com/openshift/nodejs-ex/blob/master/README.md.",
"tags": "quickstart,nodejs",
"iconClass": "icon-nodejs",
diff --git a/roles/openshift_examples/files/examples/v3.9/quickstart-templates/nodejs-mongodb.json b/roles/openshift_examples/files/examples/v3.9/quickstart-templates/nodejs-mongodb.json
index b3afae46e..0fcc540ab 100644
--- a/roles/openshift_examples/files/examples/v3.9/quickstart-templates/nodejs-mongodb.json
+++ b/roles/openshift_examples/files/examples/v3.9/quickstart-templates/nodejs-mongodb.json
@@ -17,7 +17,8 @@
},
"message": "The following service(s) have been created in your project: ${NAME}, ${DATABASE_SERVICE_NAME}.\n\nFor more information about using this template, including OpenShift considerations, see https://github.com/openshift/nodejs-ex/blob/master/README.md.",
"labels": {
- "template": "nodejs-mongodb-example"
+ "template": "nodejs-mongodb-example",
+ "app": "nodejs-mongodb-example"
},
"objects": [
{
diff --git a/roles/openshift_examples/files/examples/v3.9/quickstart-templates/rails-postgresql-persistent.json b/roles/openshift_examples/files/examples/v3.9/quickstart-templates/rails-postgresql-persistent.json
index 1c03be28a..9f40f250b 100644
--- a/roles/openshift_examples/files/examples/v3.9/quickstart-templates/rails-postgresql-persistent.json
+++ b/roles/openshift_examples/files/examples/v3.9/quickstart-templates/rails-postgresql-persistent.json
@@ -4,7 +4,7 @@
"metadata": {
"name": "rails-pgsql-persistent",
"annotations": {
- "openshift.io/display-name": "Rails + PostgreSQL (Persistent)",
+ "openshift.io/display-name": "Rails + PostgreSQL",
"description": "An example Rails application with a PostgreSQL database. For more information about using this template, including OpenShift considerations, see https://github.com/openshift/rails-ex/blob/master/README.md.",
"tags": "quickstart,ruby,rails",
"iconClass": "icon-ruby",
@@ -17,7 +17,8 @@
},
"message": "The following service(s) have been created in your project: ${NAME}, ${DATABASE_SERVICE_NAME}.\n\nFor more information about using this template, including OpenShift considerations, see https://github.com/openshift/rails-ex/blob/master/README.md.",
"labels": {
- "template": "rails-pgsql-persistent"
+ "template": "rails-pgsql-persistent",
+ "app": "rails-pgsql-persistent"
},
"objects": [
{
diff --git a/roles/openshift_examples/files/examples/v3.9/quickstart-templates/rails-postgresql.json b/roles/openshift_examples/files/examples/v3.9/quickstart-templates/rails-postgresql.json
index 240289d33..77d218aa5 100644
--- a/roles/openshift_examples/files/examples/v3.9/quickstart-templates/rails-postgresql.json
+++ b/roles/openshift_examples/files/examples/v3.9/quickstart-templates/rails-postgresql.json
@@ -17,7 +17,8 @@
},
"message": "The following service(s) have been created in your project: ${NAME}, ${DATABASE_SERVICE_NAME}.\n\nFor more information about using this template, including OpenShift considerations, see https://github.com/openshift/rails-ex/blob/master/README.md.",
"labels": {
- "template": "rails-postgresql-example"
+ "template": "rails-postgresql-example",
+ "app": "rails-postgresql-example"
},
"objects": [
{
diff --git a/roles/openshift_examples/files/examples/v3.9/xpaas-streams/jboss-image-streams.json b/roles/openshift_examples/files/examples/v3.9/xpaas-streams/jboss-image-streams.json
index ed2dbf572..7281864f8 100644
--- a/roles/openshift_examples/files/examples/v3.9/xpaas-streams/jboss-image-streams.json
+++ b/roles/openshift_examples/files/examples/v3.9/xpaas-streams/jboss-image-streams.json
@@ -17,11 +17,11 @@
"annotations": {
"openshift.io/display-name": "Red Hat JBoss Web Server 3.0 Apache Tomcat 7",
"openshift.io/provider-display-name": "Red Hat, Inc.",
- "version": "1.4.7"
+ "version": "1.4.8"
}
},
"labels": {
- "xpaas": "1.4.7"
+ "xpaas": "1.4.8"
},
"spec": {
"tags": [
@@ -87,11 +87,11 @@
"annotations": {
"openshift.io/display-name": "Red Hat JBoss Web Server 3.0 Apache Tomcat 8",
"openshift.io/provider-display-name": "Red Hat, Inc.",
- "version": "1.4.7"
+ "version": "1.4.8"
}
},
"labels": {
- "xpaas": "1.4.7"
+ "xpaas": "1.4.8"
},
"spec": {
"tags": [
@@ -157,11 +157,11 @@
"annotations": {
"openshift.io/display-name": "Red Hat JBoss Web Server 3.1 Apache Tomcat 7",
"openshift.io/provider-display-name": "Red Hat, Inc.",
- "version": "1.4.7"
+ "version": "1.4.8"
}
},
"labels": {
- "xpaas": "1.4.7"
+ "xpaas": "1.4.8"
},
"spec": {
"tags": [
@@ -210,11 +210,11 @@
"annotations": {
"openshift.io/display-name": "JBoss Web Server 3.1 Apache Tomcat 8",
"openshift.io/provider-display-name": "Red Hat, Inc.",
- "version": "1.4.7"
+ "version": "1.4.8"
}
},
"labels": {
- "xpaas": "1.4.7"
+ "xpaas": "1.4.8"
},
"spec": {
"tags": [
@@ -263,11 +263,11 @@
"annotations": {
"openshift.io/display-name": "Red Hat JBoss EAP 6.4",
"openshift.io/provider-display-name": "Red Hat, Inc.",
- "version": "1.4.7"
+ "version": "1.4.8"
}
},
"labels": {
- "xpaas": "1.4.7"
+ "xpaas": "1.4.8"
},
"spec": {
"tags": [
@@ -378,6 +378,24 @@
"kind": "DockerImage",
"name": "registry.access.redhat.com/jboss-eap-6/eap64-openshift:1.6"
}
+ },
+ {
+ "name": "1.7",
+ "annotations": {
+ "description": "JBoss EAP 6.4 S2I images.",
+ "iconClass": "icon-eap",
+ "tags": "builder,eap,javaee,java,jboss,hidden",
+ "supports": "eap:6.4,javaee:6,java:8",
+ "sampleRepo": "https://github.com/jboss-developer/jboss-eap-quickstarts.git",
+ "sampleContextDir": "kitchensink",
+ "sampleRef": "6.4.x",
+ "version": "1.7",
+ "openshift.io/display-name": "Red Hat JBoss EAP 6.4"
+ },
+ "from": {
+ "kind": "DockerImage",
+ "name": "registry.access.redhat.com/jboss-eap-6/eap64-openshift:1.7"
+ }
}
]
}
@@ -390,11 +408,11 @@
"annotations": {
"openshift.io/display-name": "Red Hat JBoss EAP 7.0",
"openshift.io/provider-display-name": "Red Hat, Inc.",
- "version": "1.4.7"
+ "version": "1.4.8"
}
},
"labels": {
- "xpaas": "1.4.7"
+ "xpaas": "1.4.8"
},
"spec": {
"tags": [
@@ -469,6 +487,24 @@
"kind": "DockerImage",
"name": "registry.access.redhat.com/jboss-eap-7/eap70-openshift:1.6"
}
+ },
+ {
+ "name": "1.7",
+ "annotations": {
+ "description": "JBoss EAP 7.0 S2I images.",
+ "iconClass": "icon-eap",
+ "tags": "builder,eap,javaee,java,jboss,hidden",
+ "supports": "eap:7.0,javaee:7,java:8",
+ "sampleRepo": "https://github.com/jboss-developer/jboss-eap-quickstarts.git",
+ "sampleContextDir": "kitchensink",
+ "sampleRef": "7.0.0.GA",
+ "version": "1.7",
+ "openshift.io/display-name": "Red Hat JBoss EAP 7.0"
+ },
+ "from": {
+ "kind": "DockerImage",
+ "name": "registry.access.redhat.com/jboss-eap-7/eap70-openshift:1.7"
+ }
}
]
}
@@ -481,18 +517,18 @@
"annotations": {
"openshift.io/display-name": "Red Hat JBoss EAP 7.1",
"openshift.io/provider-display-name": "Red Hat, Inc.",
- "version": "1.4.7"
+ "version": "1.4.8"
}
},
"labels": {
- "xpaas": "1.4.7"
+ "xpaas": "1.4.8"
},
"spec": {
"tags": [
{
"name": "TP",
"annotations": {
- "description": "JBoss EAP 7.1 Tech Preview.",
+ "description": "The latest available build of the JBoss EAP 7.1 S2I image.",
"iconClass": "icon-eap",
"tags": "builder,eap,javaee,java,jboss,hidden",
"supports": "eap:7.1,javaee:7,java:8,xpass:1.0",
@@ -504,7 +540,7 @@
},
"from": {
"kind": "ImageStreamTag",
- "name": "1.0-TP"
+ "name": "1.1"
}
},
{
@@ -524,6 +560,24 @@
"kind": "DockerImage",
"name": "registry.access.redhat.com/jboss-eap-7-tech-preview/eap71-openshift:1.0"
}
+ },
+ {
+ "name": "1.1",
+ "annotations": {
+ "description": "JBoss EAP 7.1 S2I image.",
+ "iconClass": "icon-eap",
+ "tags": "builder,eap,javaee,java,jboss,hidden",
+ "supports": "eap:7.1,javaee:7,java:8",
+ "sampleRepo": "https://github.com/jboss-developer/jboss-eap-quickstarts.git",
+ "sampleContextDir": "kitchensink",
+ "sampleRef": "7.0.0.GA",
+ "version": "1.0",
+ "openshift.io/display-name": "Red Hat JBoss EAP 7.1"
+ },
+ "from": {
+ "kind": "DockerImage",
+ "name": "registry.access.redhat.com/jboss-eap-7/eap71-openshift:1.1"
+ }
}
]
}
@@ -535,11 +589,11 @@
"name": "jboss-decisionserver62-openshift",
"annotations": {
"openshift.io/display-name": "Red Hat JBoss BRMS 6.2 decision server",
- "version": "1.4.7"
+ "version": "1.4.8"
}
},
"labels": {
- "xpaas": "1.4.7"
+ "xpaas": "1.4.8"
},
"spec": {
"tags": [
@@ -572,11 +626,11 @@
"annotations": {
"openshift.io/display-name": "Red Hat JBoss BRMS 6.3 decision server",
"openshift.io/provider-display-name": "Red Hat, Inc.",
- "version": "1.4.7"
+ "version": "1.4.8"
}
},
"labels": {
- "xpaas": "1.4.7"
+ "xpaas": "1.4.8"
},
"spec": {
"tags": [
@@ -627,11 +681,11 @@
"annotations": {
"openshift.io/display-name": "Red Hat JBoss BRMS 6.4 decision server",
"openshift.io/provider-display-name": "Red Hat, Inc.",
- "version": "1.4.7"
+ "version": "1.4.8"
}
},
"labels": {
- "xpaas": "1.4.7"
+ "xpaas": "1.4.8"
},
"spec": {
"tags": [
@@ -670,6 +724,24 @@
"kind": "DockerImage",
"name": "registry.access.redhat.com/jboss-decisionserver-6/decisionserver64-openshift:1.1"
}
+ },
+ {
+ "name": "1.2",
+ "annotations": {
+ "description": "Red Hat JBoss BRMS 6.4 decision server S2I images.",
+ "iconClass": "icon-decisionserver",
+ "tags": "builder,decisionserver,java,hidden",
+ "supports": "decisionserver:6.4,java:8",
+ "sampleRepo": "https://github.com/jboss-openshift/openshift-quickstarts.git",
+ "sampleContextDir": "decisionserver/hellorules",
+ "sampleRef": "1.3",
+ "version": "1.2",
+ "openshift.io/display-name": "Red Hat JBoss BRMS 6.4 decision server"
+ },
+ "from": {
+ "kind": "DockerImage",
+ "name": "registry.access.redhat.com/jboss-decisionserver-6/decisionserver64-openshift:1.2"
+ }
}
]
}
@@ -682,11 +754,11 @@
"annotations": {
"openshift.io/display-name": "Red Hat JBoss BPM Suite 6.3 intelligent process server",
"openshift.io/provider-display-name": "Red Hat, Inc.",
- "version": "1.4.7"
+ "version": "1.4.8"
}
},
"labels": {
- "xpaas": "1.4.7"
+ "xpaas": "1.4.8"
},
"spec": {
"tags": [
@@ -737,11 +809,11 @@
"annotations": {
"openshift.io/display-name": "Red Hat JBoss BPM Suite 6.4 intelligent process server",
"openshift.io/provider-display-name": "Red Hat, Inc.",
- "version": "1.4.7"
+ "version": "1.4.8"
}
},
"labels": {
- "xpaas": "1.4.7"
+ "xpaas": "1.4.8"
},
"spec": {
"tags": [
@@ -780,6 +852,24 @@
"kind": "DockerImage",
"name": "registry.access.redhat.com/jboss-processserver-6/processserver64-openshift:1.1"
}
+ },
+ {
+ "name": "1.2",
+ "annotations": {
+ "description": "Red Hat JBoss BPM Suite 6.4 intelligent process server S2I images.",
+ "iconClass": "icon-processserver",
+ "tags": "builder,processserver,java,hidden",
+ "supports": "processserver:6.4,java:8",
+ "sampleRepo": "https://github.com/jboss-openshift/openshift-quickstarts.git",
+ "sampleContextDir": "processserver/library",
+ "sampleRef": "1.3",
+ "version": "1.2",
+ "openshift.io/display-name": "Red Hat JBoss BPM Suite 6.4 intelligent process server"
+ },
+ "from": {
+ "kind": "DockerImage",
+ "name": "registry.access.redhat.com/jboss-processserver-6/processserver64-openshift:1.2"
+ }
}
]
}
@@ -792,11 +882,11 @@
"annotations": {
"openshift.io/display-name": "Red Hat JBoss Data Grid 6.5",
"openshift.io/provider-display-name": "Red Hat, Inc.",
- "version": "1.4.7"
+ "version": "1.4.8"
}
},
"labels": {
- "xpaas": "1.4.7"
+ "xpaas": "1.4.8"
},
"spec": {
"tags": [
@@ -859,6 +949,21 @@
"kind": "DockerImage",
"name": "registry.access.redhat.com/jboss-datagrid-6/datagrid65-openshift:1.5"
}
+ },
+ {
+ "name": "1.6",
+ "annotations": {
+ "description": "JBoss Data Grid 6.5 S2I images.",
+ "iconClass": "icon-datagrid",
+ "tags": "datagrid,jboss,hidden",
+ "supports": "datagrid:6.5",
+ "version": "1.6",
+ "openshift.io/display-name": "Red Hat JBoss Data Grid 6.5"
+ },
+ "from": {
+ "kind": "DockerImage",
+ "name": "registry.access.redhat.com/jboss-datagrid-6/datagrid65-openshift:1.6"
+ }
}
]
}
@@ -871,11 +976,11 @@
"annotations": {
"openshift.io/display-name": "Red Hat JBoss Data Grid 7.1",
"openshift.io/provider-display-name": "Red Hat, Inc.",
- "version": "1.4.7"
+ "version": "1.4.8"
}
},
"labels": {
- "xpaas": "1.4.7"
+ "xpaas": "1.4.8"
},
"spec": {
"tags": [
@@ -908,6 +1013,21 @@
"kind": "DockerImage",
"name": "registry.access.redhat.com/jboss-datagrid-7/datagrid71-openshift:1.1"
}
+ },
+ {
+ "name": "1.2",
+ "annotations": {
+ "description": "JBoss Data Grid 7.1 S2I images.",
+ "iconClass": "icon-datagrid",
+ "tags": "datagrid,jboss,hidden",
+ "supports": "datagrid:7.1",
+ "version": "1.2",
+ "openshift.io/display-name": "Red Hat JBoss Data Grid 7.1"
+ },
+ "from": {
+ "kind": "DockerImage",
+ "name": "registry.access.redhat.com/jboss-datagrid-7/datagrid71-openshift:1.2"
+ }
}
]
}
@@ -920,11 +1040,11 @@
"annotations": {
"openshift.io/display-name": "Red Hat JBoss Data Grid 6.5 Client Modules for EAP",
"openshift.io/provider-display-name": "Red Hat, Inc.",
- "version": "1.4.7"
+ "version": "1.4.8"
}
},
"labels": {
- "xpaas": "1.4.7"
+ "xpaas": "1.4.8"
},
"spec": {
"tags": [
@@ -967,11 +1087,11 @@
"annotations": {
"openshift.io/display-name": "Red Hat JBoss Data Grid 7.1 Client Modules for EAP",
"openshift.io/provider-display-name": "Red Hat, Inc.",
- "version": "1.4.7"
+ "version": "1.4.8"
}
},
"labels": {
- "xpaas": "1.4.7"
+ "xpaas": "1.4.8"
},
"spec": {
"tags": [
@@ -1000,11 +1120,11 @@
"annotations": {
"openshift.io/display-name": "Red Hat JBoss Data Virtualization 6.3",
"openshift.io/provider-display-name": "Red Hat, Inc.",
- "version": "1.4.7"
+ "version": "1.4.8"
}
},
"labels": {
- "xpaas": "1.4.7"
+ "xpaas": "1.4.8"
},
"spec": {
"tags": [
@@ -1067,6 +1187,21 @@
"kind": "DockerImage",
"name": "registry.access.redhat.com/jboss-datavirt-6/datavirt63-openshift:1.3"
}
+ },
+ {
+ "name": "1.4",
+ "annotations": {
+ "description": "Red Hat JBoss Data Virtualization 6.3 S2I images.",
+ "iconClass": "icon-datavirt",
+ "tags": "datavirt,jboss,hidden",
+ "supports":"datavirt:6.3",
+ "version": "1.4",
+ "openshift.io/display-name": "Red Hat JBoss Data Virtualization 6.3"
+ },
+ "from": {
+ "kind": "DockerImage",
+ "name": "registry.access.redhat.com/jboss-datavirt-6/datavirt63-openshift:1.4"
+ }
}
]
}
@@ -1079,11 +1214,11 @@
"annotations": {
"openshift.io/display-name": "Red Hat JBoss Data Virtualization 6.5 JDBC Driver Modules for EAP",
"openshift.io/provider-display-name": "Red Hat, Inc.",
- "version": "1.4.7"
+ "version": "1.4.8"
}
},
"labels": {
- "xpaas": "1.4.7"
+ "xpaas": "1.4.8"
},
"spec": {
"tags": [
@@ -1126,11 +1261,11 @@
"annotations": {
"openshift.io/display-name": "Red Hat JBoss A-MQ 6.2",
"openshift.io/provider-display-name": "Red Hat, Inc.",
- "version": "1.4.7"
+ "version": "1.4.8"
}
},
"labels": {
- "xpaas": "1.4.7"
+ "xpaas": "1.4.8"
},
"spec": {
"tags": [
@@ -1223,6 +1358,21 @@
"kind": "DockerImage",
"name": "registry.access.redhat.com/jboss-amq-6/amq62-openshift:1.6"
}
+ },
+ {
+ "name": "1.7",
+ "annotations": {
+ "description": "JBoss A-MQ 6.2 broker image.",
+ "iconClass": "icon-amq",
+ "tags": "messaging,amq,jboss,hidden",
+ "supports":"amq:6.2,messaging",
+ "version": "1.7",
+ "openshift.io/display-name": "Red Hat JBoss A-MQ 6.2"
+ },
+ "from": {
+ "kind": "DockerImage",
+ "name": "registry.access.redhat.com/jboss-amq-6/amq62-openshift:1.7"
+ }
}
]
}
@@ -1235,11 +1385,11 @@
"annotations": {
"openshift.io/display-name": "Red Hat JBoss A-MQ 6.3",
"openshift.io/provider-display-name": "Red Hat, Inc.",
- "version": "1.4.7"
+ "version": "1.4.8"
}
},
"labels": {
- "xpaas": "1.4.7"
+ "xpaas": "1.4.8"
},
"spec": {
"tags": [
@@ -1287,6 +1437,21 @@
"kind": "DockerImage",
"name": "registry.access.redhat.com/jboss-amq-6/amq63-openshift:1.2"
}
+ },
+ {
+ "name": "1.3",
+ "annotations": {
+ "description": "JBoss A-MQ 6.3 broker image.",
+ "iconClass": "icon-amq",
+ "tags": "messaging,amq,jboss,hidden",
+ "supports": "amq:6.3,messaging",
+ "version": "1.3",
+ "openshift.io/display-name": "Red Hat JBoss A-MQ 6.3"
+ },
+ "from": {
+ "kind": "DockerImage",
+ "name": "registry.access.redhat.com/jboss-amq-6/amq63-openshift:1.3"
+ }
}
]
}
@@ -1300,11 +1465,11 @@
"description": "Red Hat SSO 7.0",
"openshift.io/display-name": "Red Hat Single Sign-On 7.0",
"openshift.io/provider-display-name": "Red Hat, Inc.",
- "version": "1.4.7"
+ "version": "1.4.8"
}
},
"labels": {
- "xpaas": "1.4.7"
+ "xpaas": "1.4.8"
},
"spec": {
"tags": [
@@ -1350,11 +1515,11 @@
"description": "Red Hat SSO 7.1",
"openshift.io/display-name": "Red Hat Single Sign-On 7.1",
"openshift.io/provider-display-name": "Red Hat, Inc.",
- "version": "1.4.7"
+ "version": "1.4.8"
}
},
"labels": {
- "xpaas": "1.4.7"
+ "xpaas": "1.4.8"
},
"spec": {
"tags": [
@@ -1402,6 +1567,21 @@
"kind": "DockerImage",
"name": "registry.access.redhat.com/redhat-sso-7/sso71-openshift:1.2"
}
+ },
+ {
+ "name": "1.3",
+ "annotations": {
+ "description": "Red Hat SSO 7.1",
+ "iconClass": "icon-sso",
+ "tags": "sso,keycloak,redhat,hidden",
+ "supports": "sso:7.1",
+ "version": "1.3",
+ "openshift.io/display-name": "Red Hat Single Sign-On 7.1"
+ },
+ "from": {
+ "kind": "DockerImage",
+ "name": "registry.access.redhat.com/redhat-sso-7/sso71-openshift:1.3"
+ }
}
]
}
@@ -1414,11 +1594,11 @@
"annotations": {
"openshift.io/display-name": "Red Hat OpenJDK 8",
"openshift.io/provider-display-name": "Red Hat, Inc.",
- "version": "1.4.7"
+ "version": "1.4.8"
}
},
"labels": {
- "xpaas": "1.4.7"
+ "xpaas": "1.4.8"
},
"spec": {
"tags": [
diff --git a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/amq62-basic.json b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/amq62-basic.json
index 8f8e14cb6..134a577b6 100644
--- a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/amq62-basic.json
+++ b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/amq62-basic.json
@@ -7,14 +7,14 @@
"iconClass": "icon-amq",
"openshift.io/provider-display-name": "Red Hat, Inc.",
"tags": "messaging,amq,jboss,hidden",
- "version": "1.4.7",
+ "version": "1.4.8",
"openshift.io/display-name": "JBoss A-MQ 6.2 (Ephemeral, no SSL)"
},
"name": "amq62-basic"
},
"labels": {
"template": "amq62-basic",
- "xpaas": "1.4.7"
+ "xpaas": "1.4.8"
},
"message": "A new messaging service has been created in your project. It will handle the protocol(s) \"${MQ_PROTOCOL}\". The username/password for accessing the service is ${MQ_USERNAME}/${MQ_PASSWORD}.",
"parameters": [
@@ -73,7 +73,7 @@
"displayName": "A-MQ Mesh Discovery Type",
"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",
+ "value": "dns",
"required": false
},
{
@@ -197,6 +197,32 @@
}
},
{
+ "kind": "Service",
+ "apiVersion": "v1",
+ "spec": {
+ "clusterIP": "None",
+ "ports": [
+ {
+ "name": "mesh",
+ "port": 61616
+ }
+ ],
+ "selector": {
+ "deploymentConfig": "${APPLICATION_NAME}-amq"
+ }
+ },
+ "metadata": {
+ "name": "${APPLICATION_NAME}-amq-mesh",
+ "labels": {
+ "application": "${APPLICATION_NAME}"
+ },
+ "annotations": {
+ "service.alpha.kubernetes.io/tolerate-unready-endpoints": "true",
+ "description": "Supports node discovery for mesh formation."
+ }
+ }
+ },
+ {
"kind": "DeploymentConfig",
"apiVersion": "v1",
"metadata": {
@@ -223,7 +249,7 @@
"from": {
"kind": "ImageStreamTag",
"namespace": "${IMAGE_STREAM_NAMESPACE}",
- "name": "jboss-amq-62:1.6"
+ "name": "jboss-amq-62:1.7"
}
}
},
@@ -317,7 +343,7 @@
},
{
"name": "AMQ_MESH_SERVICE_NAME",
- "value": "${APPLICATION_NAME}-amq-tcp"
+ "value": "${APPLICATION_NAME}-amq-mesh"
},
{
"name": "AMQ_MESH_SERVICE_NAMESPACE",
diff --git a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/amq62-persistent-ssl.json b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/amq62-persistent-ssl.json
index 96f9d616f..5a034d0ba 100644
--- a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/amq62-persistent-ssl.json
+++ b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/amq62-persistent-ssl.json
@@ -5,7 +5,7 @@
"annotations": {
"iconClass": "icon-amq",
"tags": "messaging,amq,jboss,hidden",
- "version": "1.4.7",
+ "version": "1.4.8",
"openshift.io/display-name": "JBoss A-MQ 6.2 (with SSL)",
"openshift.io/provider-display-name": "Red Hat, Inc.",
"description": "An example JBoss A-MQ application. For more information about using this template, see https://github.com/jboss-openshift/application-templates.",
@@ -18,9 +18,9 @@
},
"labels": {
"template": "amq62-persistent-ssl",
- "xpaas": "1.4.7"
+ "xpaas": "1.4.8"
},
- "message": "A new persistent messaging service with SSL support has been created in your project. It will handle the protocol(s) \"${MQ_PROTOCOL}\". The username/password for accessing the service is ${MQ_USERNAME}/${MQ_PASSWORD}. Please be sure to create the \"amq-service-account\" service account and a secret named \"${AMQ_SECRET}\" containing the trust store and key store files (\"${AMQ_TRUSTSTORE}\" and \"${AMQ_KEYSTORE}\") used for serving secure content.",
+ "message": "A new persistent messaging service with SSL support has been created in your project. It will handle the protocol(s) \"${MQ_PROTOCOL}\". The username/password for accessing the service is ${MQ_USERNAME}/${MQ_PASSWORD}. Please be sure to create a secret named \"${AMQ_SECRET}\" containing the trust store and key store files (\"${AMQ_TRUSTSTORE}\" and \"${AMQ_KEYSTORE}\") used for serving secure content.",
"parameters": [
{
"displayName": "Application Name",
@@ -68,7 +68,7 @@
"displayName": "A-MQ Volume Size",
"description": "Size of the volume used by A-MQ for persisting messages.",
"name": "VOLUME_CAPACITY",
- "value": "512Mi",
+ "value": "1Gi",
"required": true
},
{
@@ -91,7 +91,7 @@
"displayName": "A-MQ Mesh Discovery Type",
"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",
+ "value": "dns",
"required": false
},
{
@@ -346,6 +346,32 @@
}
},
{
+ "kind": "Service",
+ "apiVersion": "v1",
+ "spec": {
+ "clusterIP": "None",
+ "ports": [
+ {
+ "name": "mesh",
+ "port": 61616
+ }
+ ],
+ "selector": {
+ "deploymentConfig": "${APPLICATION_NAME}-amq"
+ }
+ },
+ "metadata": {
+ "name": "${APPLICATION_NAME}-amq-mesh",
+ "labels": {
+ "application": "${APPLICATION_NAME}"
+ },
+ "annotations": {
+ "service.alpha.kubernetes.io/tolerate-unready-endpoints": "true",
+ "description": "Supports node discovery for mesh formation."
+ }
+ }
+ },
+ {
"kind": "DeploymentConfig",
"apiVersion": "v1",
"metadata": {
@@ -372,7 +398,7 @@
"from": {
"kind": "ImageStreamTag",
"namespace": "${IMAGE_STREAM_NAMESPACE}",
- "name": "jboss-amq-62:1.6"
+ "name": "jboss-amq-62:1.7"
}
}
},
@@ -393,7 +419,6 @@
}
},
"spec": {
- "serviceAccountName": "amq-service-account",
"terminationGracePeriodSeconds": 60,
"containers": [
{
@@ -502,7 +527,7 @@
},
{
"name": "AMQ_MESH_SERVICE_NAME",
- "value": "${APPLICATION_NAME}-amq-tcp"
+ "value": "${APPLICATION_NAME}-amq-mesh"
},
{
"name": "AMQ_MESH_SERVICE_NAMESPACE",
@@ -585,7 +610,7 @@
"from": {
"kind": "ImageStreamTag",
"namespace": "${IMAGE_STREAM_NAMESPACE}",
- "name": "jboss-amq-62:1.6"
+ "name": "jboss-amq-62:1.7"
}
}
},
@@ -644,7 +669,7 @@
},
{
"name": "AMQ_MESH_SERVICE_NAME",
- "value": "${APPLICATION_NAME}-amq-tcp"
+ "value": "${APPLICATION_NAME}-amq-mesh"
},
{
"name": "AMQ_MESH_SERVICE_NAMESPACE",
diff --git a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/amq62-persistent.json b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/amq62-persistent.json
index 67c812fb4..bc62098ee 100644
--- a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/amq62-persistent.json
+++ b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/amq62-persistent.json
@@ -6,7 +6,7 @@
"description": "Application template for JBoss A-MQ brokers. These can be deployed as standalone and use persistent storage for saving messages, including message migration when the number of pods are reduced. This template doesn't feature SSL support.",
"iconClass": "icon-amq",
"tags": "messaging,amq,jboss,hidden",
- "version": "1.4.7",
+ "version": "1.4.8",
"openshift.io/display-name": "JBoss A-MQ 6.2 (no SSL)",
"openshift.io/provider-display-name": "Red Hat, Inc."
},
@@ -14,7 +14,7 @@
},
"labels": {
"template": "amq62-persistent",
- "xpaas": "1.4.7"
+ "xpaas": "1.4.8"
},
"message": "A new persistent messaging service has been created in your project. It will handle the protocol(s) \"${MQ_PROTOCOL}\". The username/password for accessing the service is ${MQ_USERNAME}/${MQ_PASSWORD}.",
"parameters": [
@@ -64,7 +64,7 @@
"displayName": "A-MQ Volume Size",
"description": "Size of the volume used by A-MQ for persisting messages.",
"name": "VOLUME_CAPACITY",
- "value": "512Mi",
+ "value": "1Gi",
"required": true
},
{
@@ -87,7 +87,7 @@
"displayName": "A-MQ Mesh Discovery Type",
"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",
+ "value": "dns",
"required": false
},
{
@@ -211,6 +211,32 @@
}
},
{
+ "kind": "Service",
+ "apiVersion": "v1",
+ "spec": {
+ "clusterIP": "None",
+ "ports": [
+ {
+ "name": "mesh",
+ "port": 61616
+ }
+ ],
+ "selector": {
+ "deploymentConfig": "${APPLICATION_NAME}-amq"
+ }
+ },
+ "metadata": {
+ "name": "${APPLICATION_NAME}-amq-mesh",
+ "labels": {
+ "application": "${APPLICATION_NAME}"
+ },
+ "annotations": {
+ "service.alpha.kubernetes.io/tolerate-unready-endpoints": "true",
+ "description": "Supports node discovery for mesh formation."
+ }
+ }
+ },
+ {
"kind": "DeploymentConfig",
"apiVersion": "v1",
"metadata": {
@@ -237,7 +263,7 @@
"from": {
"kind": "ImageStreamTag",
"namespace": "${IMAGE_STREAM_NAMESPACE}",
- "name": "jboss-amq-62:1.6"
+ "name": "jboss-amq-62:1.7"
}
}
},
@@ -341,7 +367,7 @@
},
{
"name": "AMQ_MESH_SERVICE_NAME",
- "value": "${APPLICATION_NAME}-amq-tcp"
+ "value": "${APPLICATION_NAME}-amq-mesh"
},
{
"name": "AMQ_MESH_SERVICE_NAMESPACE",
@@ -398,7 +424,7 @@
"from": {
"kind": "ImageStreamTag",
"namespace": "${IMAGE_STREAM_NAMESPACE}",
- "name": "jboss-amq-62:1.6"
+ "name": "jboss-amq-62:1.7"
}
}
},
@@ -457,7 +483,7 @@
},
{
"name": "AMQ_MESH_SERVICE_NAME",
- "value": "${APPLICATION_NAME}-amq-tcp"
+ "value": "${APPLICATION_NAME}-amq-mesh"
},
{
"name": "AMQ_MESH_SERVICE_NAMESPACE",
diff --git a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/amq62-ssl.json b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/amq62-ssl.json
index 9f488820c..38a291fe9 100644
--- a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/amq62-ssl.json
+++ b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/amq62-ssl.json
@@ -6,7 +6,7 @@
"description": "Application template for JBoss A-MQ brokers. These can be deployed as standalone or in a mesh. This template supports SSL and requires usage of OpenShift secrets.",
"iconClass": "icon-amq",
"tags": "messaging,amq,jboss,hidden",
- "version": "1.4.7",
+ "version": "1.4.8",
"openshift.io/display-name": "JBoss A-MQ 6.2 (Ephemeral with SSL)",
"openshift.io/provider-display-name": "Red Hat, Inc."
},
@@ -14,9 +14,9 @@
},
"labels": {
"template": "amq62-ssl",
- "xpaas": "1.4.7"
+ "xpaas": "1.4.8"
},
- "message": "A new messaging service with SSL support has been created in your project. It will handle the protocol(s) \"${MQ_PROTOCOL}\". The username/password for accessing the service is ${MQ_USERNAME}/${MQ_PASSWORD}. Please be sure to create the \"amq-service-account\" service account and a secret named \"${AMQ_SECRET}\" containing the trust store and key store files (\"${AMQ_TRUSTSTORE}\" and \"${AMQ_KEYSTORE}\") used for serving secure content.",
+ "message": "A new messaging service with SSL support has been created in your project. It will handle the protocol(s) \"${MQ_PROTOCOL}\". The username/password for accessing the service is ${MQ_USERNAME}/${MQ_PASSWORD}. Please be sure to create a secret named \"${AMQ_SECRET}\" containing the trust store and key store files (\"${AMQ_TRUSTSTORE}\" and \"${AMQ_KEYSTORE}\") used for serving secure content.",
"parameters": [
{
"displayName": "Application Name",
@@ -108,7 +108,7 @@
"displayName": "A-MQ Mesh Discovery Type",
"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",
+ "value": "dns",
"required": false
},
{
@@ -328,6 +328,32 @@
}
},
{
+ "kind": "Service",
+ "apiVersion": "v1",
+ "spec": {
+ "clusterIP": "None",
+ "ports": [
+ {
+ "name": "mesh",
+ "port": 61616
+ }
+ ],
+ "selector": {
+ "deploymentConfig": "${APPLICATION_NAME}-amq"
+ }
+ },
+ "metadata": {
+ "name": "${APPLICATION_NAME}-amq-mesh",
+ "labels": {
+ "application": "${APPLICATION_NAME}"
+ },
+ "annotations": {
+ "service.alpha.kubernetes.io/tolerate-unready-endpoints": "true",
+ "description": "Supports node discovery for mesh formation."
+ }
+ }
+ },
+ {
"kind": "DeploymentConfig",
"apiVersion": "v1",
"metadata": {
@@ -354,7 +380,7 @@
"from": {
"kind": "ImageStreamTag",
"namespace": "${IMAGE_STREAM_NAMESPACE}",
- "name": "jboss-amq-62:1.6"
+ "name": "jboss-amq-62:1.7"
}
}
},
@@ -375,7 +401,6 @@
}
},
"spec": {
- "serviceAccountName": "amq-service-account",
"terminationGracePeriodSeconds": 60,
"containers": [
{
@@ -476,7 +501,7 @@
},
{
"name": "AMQ_MESH_SERVICE_NAME",
- "value": "${APPLICATION_NAME}-amq-tcp"
+ "value": "${APPLICATION_NAME}-amq-mesh"
},
{
"name": "AMQ_MESH_SERVICE_NAMESPACE",
diff --git a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/amq63-basic.json b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/amq63-basic.json
index e13530764..b72a5adb2 100644
--- a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/amq63-basic.json
+++ b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/amq63-basic.json
@@ -6,7 +6,7 @@
"description": "Application template for JBoss A-MQ brokers. These can be deployed as standalone or in a mesh. This template doesn't feature SSL support.",
"iconClass": "icon-amq",
"tags": "messaging,amq,jboss,hidden",
- "version": "1.4.7",
+ "version": "1.4.8",
"openshift.io/display-name": "Red Hat JBoss A-MQ 6.3 (Ephemeral, no SSL)",
"openshift.io/provider-display-name": "Red Hat, Inc."
},
@@ -14,7 +14,7 @@
},
"labels": {
"template": "amq63-basic",
- "xpaas": "1.4.7"
+ "xpaas": "1.4.8"
},
"message": "A new messaging service has been created in your project. It will handle the protocol(s) \"${MQ_PROTOCOL}\". The username/password for accessing the service is ${MQ_USERNAME}/${MQ_PASSWORD}.",
"parameters": [
@@ -73,7 +73,7 @@
"displayName": "A-MQ Mesh Discovery Type",
"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",
+ "value": "dns",
"required": false
},
{
@@ -197,6 +197,32 @@
}
},
{
+ "kind": "Service",
+ "apiVersion": "v1",
+ "spec": {
+ "clusterIP": "None",
+ "ports": [
+ {
+ "name": "mesh",
+ "port": 61616
+ }
+ ],
+ "selector": {
+ "deploymentConfig": "${APPLICATION_NAME}-amq"
+ }
+ },
+ "metadata": {
+ "name": "${APPLICATION_NAME}-amq-mesh",
+ "labels": {
+ "application": "${APPLICATION_NAME}"
+ },
+ "annotations": {
+ "service.alpha.kubernetes.io/tolerate-unready-endpoints": "true",
+ "description": "Supports node discovery for mesh formation."
+ }
+ }
+ },
+ {
"kind": "DeploymentConfig",
"apiVersion": "v1",
"metadata": {
@@ -223,7 +249,7 @@
"from": {
"kind": "ImageStreamTag",
"namespace": "${IMAGE_STREAM_NAMESPACE}",
- "name": "jboss-amq-63:1.2"
+ "name": "jboss-amq-63:1.3"
}
}
},
@@ -317,7 +343,7 @@
},
{
"name": "AMQ_MESH_SERVICE_NAME",
- "value": "${APPLICATION_NAME}-amq-tcp"
+ "value": "${APPLICATION_NAME}-amq-mesh"
},
{
"name": "AMQ_MESH_SERVICE_NAMESPACE",
diff --git a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/amq63-persistent-ssl.json b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/amq63-persistent-ssl.json
index 3eedee933..e0fa53831 100644
--- a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/amq63-persistent-ssl.json
+++ b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/amq63-persistent-ssl.json
@@ -5,7 +5,7 @@
"annotations": {
"iconClass": "icon-amq",
"tags": "messaging,amq,jboss",
- "version": "1.4.7",
+ "version": "1.4.8",
"openshift.io/display-name": "JBoss A-MQ 6.3 (with SSL)",
"openshift.io/provider-display-name": "Red Hat, Inc.",
"description": "An example JBoss A-MQ application. For more information about using this template, see https://github.com/jboss-openshift/application-templates.",
@@ -17,9 +17,9 @@
},
"labels": {
"template": "amq63-persistent-ssl",
- "xpaas": "1.4.7"
+ "xpaas": "1.4.8"
},
- "message": "A new persistent messaging service with SSL support has been created in your project. It will handle the protocol(s) \"${MQ_PROTOCOL}\". The username/password for accessing the service is ${MQ_USERNAME}/${MQ_PASSWORD}. Please be sure to create the \"amq-service-account\" service account and a secret named \"${AMQ_SECRET}\" containing the trust store and key store files (\"${AMQ_TRUSTSTORE}\" and \"${AMQ_KEYSTORE}\") used for serving secure content.",
+ "message": "A new persistent messaging service with SSL support has been created in your project. It will handle the protocol(s) \"${MQ_PROTOCOL}\". The username/password for accessing the service is ${MQ_USERNAME}/${MQ_PASSWORD}. Please be sure to create a secret named \"${AMQ_SECRET}\" containing the trust store and key store files (\"${AMQ_TRUSTSTORE}\" and \"${AMQ_KEYSTORE}\") used for serving secure content.",
"parameters": [
{
"displayName": "Application Name",
@@ -67,7 +67,7 @@
"displayName": "A-MQ Volume Size",
"description": "Size of the volume used by A-MQ for persisting messages.",
"name": "VOLUME_CAPACITY",
- "value": "512Mi",
+ "value": "1Gi",
"required": true
},
{
@@ -90,7 +90,7 @@
"displayName": "A-MQ Mesh Discovery Type",
"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",
+ "value": "dns",
"required": false
},
{
@@ -345,6 +345,32 @@
}
},
{
+ "kind": "Service",
+ "apiVersion": "v1",
+ "spec": {
+ "clusterIP": "None",
+ "ports": [
+ {
+ "name": "mesh",
+ "port": 61616
+ }
+ ],
+ "selector": {
+ "deploymentConfig": "${APPLICATION_NAME}-amq"
+ }
+ },
+ "metadata": {
+ "name": "${APPLICATION_NAME}-amq-mesh",
+ "labels": {
+ "application": "${APPLICATION_NAME}"
+ },
+ "annotations": {
+ "service.alpha.kubernetes.io/tolerate-unready-endpoints": "true",
+ "description": "Supports node discovery for mesh formation."
+ }
+ }
+ },
+ {
"kind": "DeploymentConfig",
"apiVersion": "v1",
"metadata": {
@@ -371,7 +397,7 @@
"from": {
"kind": "ImageStreamTag",
"namespace": "${IMAGE_STREAM_NAMESPACE}",
- "name": "jboss-amq-63:1.2"
+ "name": "jboss-amq-63:1.3"
}
}
},
@@ -392,7 +418,6 @@
}
},
"spec": {
- "serviceAccountName": "amq-service-account",
"terminationGracePeriodSeconds": 60,
"containers": [
{
@@ -501,7 +526,7 @@
},
{
"name": "AMQ_MESH_SERVICE_NAME",
- "value": "${APPLICATION_NAME}-amq-tcp"
+ "value": "${APPLICATION_NAME}-amq-mesh"
},
{
"name": "AMQ_MESH_SERVICE_NAMESPACE",
@@ -584,7 +609,7 @@
"from": {
"kind": "ImageStreamTag",
"namespace": "${IMAGE_STREAM_NAMESPACE}",
- "name": "jboss-amq-63:1.2"
+ "name": "jboss-amq-63:1.3"
}
}
},
@@ -643,7 +668,7 @@
},
{
"name": "AMQ_MESH_SERVICE_NAME",
- "value": "${APPLICATION_NAME}-amq-tcp"
+ "value": "${APPLICATION_NAME}-amq-mesh"
},
{
"name": "AMQ_MESH_SERVICE_NAMESPACE",
diff --git a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/amq63-persistent.json b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/amq63-persistent.json
index 7c0aec61a..a87876ca5 100644
--- a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/amq63-persistent.json
+++ b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/amq63-persistent.json
@@ -5,7 +5,7 @@
"annotations": {
"iconClass": "icon-amq",
"tags": "messaging,amq,jboss",
- "version": "1.4.7",
+ "version": "1.4.8",
"openshift.io/display-name": "JBoss A-MQ 6.3 (no SSL)",
"openshift.io/provider-display-name": "Red Hat, Inc.",
"description": "An example JBoss A-MQ application. For more information about using this template, see https://github.com/jboss-openshift/application-templates.",
@@ -17,7 +17,7 @@
},
"labels": {
"template": "amq63-persistent",
- "xpaas": "1.4.7"
+ "xpaas": "1.4.8"
},
"message": "A new persistent messaging service has been created in your project. It will handle the protocol(s) \"${MQ_PROTOCOL}\". The username/password for accessing the service is ${MQ_USERNAME}/${MQ_PASSWORD}.",
"parameters": [
@@ -67,7 +67,7 @@
"displayName": "A-MQ Volume Size",
"description": "Size of the volume used by A-MQ for persisting messages.",
"name": "VOLUME_CAPACITY",
- "value": "512Mi",
+ "value": "1Gi",
"required": true
},
{
@@ -90,7 +90,7 @@
"displayName": "A-MQ Mesh Discovery Type",
"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",
+ "value": "dns",
"required": false
},
{
@@ -214,6 +214,32 @@
}
},
{
+ "kind": "Service",
+ "apiVersion": "v1",
+ "spec": {
+ "clusterIP": "None",
+ "ports": [
+ {
+ "name": "mesh",
+ "port": 61616
+ }
+ ],
+ "selector": {
+ "deploymentConfig": "${APPLICATION_NAME}-amq"
+ }
+ },
+ "metadata": {
+ "name": "${APPLICATION_NAME}-amq-mesh",
+ "labels": {
+ "application": "${APPLICATION_NAME}"
+ },
+ "annotations": {
+ "service.alpha.kubernetes.io/tolerate-unready-endpoints": "true",
+ "description": "Supports node discovery for mesh formation."
+ }
+ }
+ },
+ {
"kind": "DeploymentConfig",
"apiVersion": "v1",
"metadata": {
@@ -240,7 +266,7 @@
"from": {
"kind": "ImageStreamTag",
"namespace": "${IMAGE_STREAM_NAMESPACE}",
- "name": "jboss-amq-63:1.2"
+ "name": "jboss-amq-63:1.3"
}
}
},
@@ -344,7 +370,7 @@
},
{
"name": "AMQ_MESH_SERVICE_NAME",
- "value": "${APPLICATION_NAME}-amq-tcp"
+ "value": "${APPLICATION_NAME}-amq-mesh"
},
{
"name": "AMQ_MESH_SERVICE_NAMESPACE",
@@ -401,7 +427,7 @@
"from": {
"kind": "ImageStreamTag",
"namespace": "${IMAGE_STREAM_NAMESPACE}",
- "name": "jboss-amq-63:1.2"
+ "name": "jboss-amq-63:1.3"
}
}
},
@@ -460,7 +486,7 @@
},
{
"name": "AMQ_MESH_SERVICE_NAME",
- "value": "${APPLICATION_NAME}-amq-tcp"
+ "value": "${APPLICATION_NAME}-amq-mesh"
},
{
"name": "AMQ_MESH_SERVICE_NAMESPACE",
diff --git a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/amq63-ssl.json b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/amq63-ssl.json
index a55403c79..f4c43da0e 100644
--- a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/amq63-ssl.json
+++ b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/amq63-ssl.json
@@ -5,7 +5,7 @@
"annotations": {
"iconClass": "icon-amq",
"tags": "messaging,amq,jboss,hidden",
- "version": "1.4.7",
+ "version": "1.4.8",
"openshift.io/display-name": "JBoss A-MQ 6.3 (Ephemeral with SSL)",
"openshift.io/provider-display-name": "Red Hat, Inc.",
"description": "An example JBoss A-MQ application. For more information about using this template, see https://github.com/jboss-openshift/application-templates.",
@@ -17,9 +17,9 @@
},
"labels": {
"template": "amq63-ssl",
- "xpaas": "1.4.7"
+ "xpaas": "1.4.8"
},
- "message": "A new messaging service with SSL support has been created in your project. It will handle the protocol(s) \"${MQ_PROTOCOL}\". The username/password for accessing the service is ${MQ_USERNAME}/${MQ_PASSWORD}. Please be sure to create the \"amq-service-account\" service account and a secret named \"${AMQ_SECRET}\" containing the trust store and key store files (\"${AMQ_TRUSTSTORE}\" and \"${AMQ_KEYSTORE}\") used for serving secure content.",
+ "message": "A new messaging service with SSL support has been created in your project. It will handle the protocol(s) \"${MQ_PROTOCOL}\". The username/password for accessing the service is ${MQ_USERNAME}/${MQ_PASSWORD}. Please be sure to create a secret named \"${AMQ_SECRET}\" containing the trust store and key store files (\"${AMQ_TRUSTSTORE}\" and \"${AMQ_KEYSTORE}\") used for serving secure content.",
"parameters": [
{
"displayName": "Application Name",
@@ -111,7 +111,7 @@
"displayName": "A-MQ Mesh Discovery Type",
"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",
+ "value": "dns",
"required": false
},
{
@@ -331,6 +331,32 @@
}
},
{
+ "kind": "Service",
+ "apiVersion": "v1",
+ "spec": {
+ "clusterIP": "None",
+ "ports": [
+ {
+ "name": "mesh",
+ "port": 61616
+ }
+ ],
+ "selector": {
+ "deploymentConfig": "${APPLICATION_NAME}-amq"
+ }
+ },
+ "metadata": {
+ "name": "${APPLICATION_NAME}-amq-mesh",
+ "labels": {
+ "application": "${APPLICATION_NAME}"
+ },
+ "annotations": {
+ "service.alpha.kubernetes.io/tolerate-unready-endpoints": "true",
+ "description": "Supports node discovery for mesh formation."
+ }
+ }
+ },
+ {
"kind": "DeploymentConfig",
"apiVersion": "v1",
"metadata": {
@@ -357,7 +383,7 @@
"from": {
"kind": "ImageStreamTag",
"namespace": "${IMAGE_STREAM_NAMESPACE}",
- "name": "jboss-amq-63:1.2"
+ "name": "jboss-amq-63:1.3"
}
}
},
@@ -378,7 +404,6 @@
}
},
"spec": {
- "serviceAccountName": "amq-service-account",
"terminationGracePeriodSeconds": 60,
"containers": [
{
@@ -479,7 +504,7 @@
},
{
"name": "AMQ_MESH_SERVICE_NAME",
- "value": "${APPLICATION_NAME}-amq-tcp"
+ "value": "${APPLICATION_NAME}-amq-mesh"
},
{
"name": "AMQ_MESH_SERVICE_NAMESPACE",
diff --git a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/datagrid65-basic.json b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/datagrid65-basic.json
index af390c13d..055287371 100644
--- a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/datagrid65-basic.json
+++ b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/datagrid65-basic.json
@@ -6,7 +6,7 @@
"iconClass": "icon-datagrid",
"description": "Application template for JDG 6.5 applications.",
"tags": "datagrid,jboss,hidden",
- "version": "1.4.7",
+ "version": "1.4.8",
"openshift.io/display-name": "JBoss Data Grid 6.5 (Ephemeral, no https)",
"openshift.io/provider-display-name": "Red Hat, Inc."
},
@@ -14,7 +14,7 @@
},
"labels": {
"template": "datagrid65-basic",
- "xpaas": "1.4.7"
+ "xpaas": "1.4.8"
},
"message": "A new data grid service has been created in your project. It supports connector type(s) \"${INFINISPAN_CONNECTORS}\".",
"parameters": [
@@ -109,6 +109,12 @@
"from": "[a-zA-Z0-9]{8}",
"generate": "expression",
"required": true
+ },
+ {
+ "description": "Container memory limit",
+ "name": "MEMORY_LIMIT",
+ "value": "1Gi",
+ "required": false
}
],
"objects": [
@@ -185,6 +191,32 @@
}
},
{
+ "kind": "Service",
+ "apiVersion": "v1",
+ "spec": {
+ "clusterIP": "None",
+ "ports": [
+ {
+ "name": "ping",
+ "port": 8888
+ }
+ ],
+ "selector": {
+ "deploymentConfig": "${APPLICATION_NAME}"
+ }
+ },
+ "metadata": {
+ "name": "${APPLICATION_NAME}-ping",
+ "labels": {
+ "application": "${APPLICATION_NAME}"
+ },
+ "annotations": {
+ "service.alpha.kubernetes.io/tolerate-unready-endpoints": "true",
+ "description": "The JGroups ping port for clustering."
+ }
+ }
+ },
+ {
"kind": "Route",
"apiVersion": "v1",
"id": "${APPLICATION_NAME}-http",
@@ -228,7 +260,7 @@
"from": {
"kind": "ImageStreamTag",
"namespace": "${IMAGE_STREAM_NAMESPACE}",
- "name": "jboss-datagrid65-openshift:1.5"
+ "name": "jboss-datagrid65-openshift:1.6"
}
}
},
@@ -255,6 +287,11 @@
"name": "${APPLICATION_NAME}",
"image": "jboss-datagrid65-openshift",
"imagePullPolicy": "Always",
+ "resources": {
+ "limits": {
+ "memory": "${MEMORY_LIMIT}"
+ }
+ },
"livenessProbe": {
"exec": {
"command": [
@@ -262,7 +299,8 @@
"-c",
"/opt/datagrid/bin/livenessProbe.sh"
]
- }
+ },
+ "initialDelaySeconds": 60
},
"readinessProbe": {
"exec": {
@@ -315,16 +353,16 @@
"value": "${PASSWORD}"
},
{
- "name": "OPENSHIFT_KUBE_PING_LABELS",
- "value": "application=${APPLICATION_NAME}"
+ "name": "JGROUPS_PING_PROTOCOL",
+ "value": "openshift.DNS_PING"
+ },
+ {
+ "name": "OPENSHIFT_DNS_PING_SERVICE_NAME",
+ "value": "${APPLICATION_NAME}-ping"
},
{
- "name": "OPENSHIFT_KUBE_PING_NAMESPACE",
- "valueFrom": {
- "fieldRef": {
- "fieldPath": "metadata.namespace"
- }
- }
+ "name": "OPENSHIFT_DNS_PING_SERVICE_PORT",
+ "value": "8888"
},
{
"name": "INFINISPAN_CONNECTORS",
diff --git a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/datagrid65-https.json b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/datagrid65-https.json
index 97d02c788..66636d7d7 100644
--- a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/datagrid65-https.json
+++ b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/datagrid65-https.json
@@ -6,7 +6,7 @@
"iconClass": "icon-datagrid",
"description": "Application template for JDG 6.5 applications.",
"tags": "datagrid,jboss,hidden",
- "version": "1.4.7",
+ "version": "1.4.8",
"openshift.io/display-name": "JBoss Data Grid 6.5 (Ephemeral with https)",
"openshift.io/provider-display-name": "Red Hat, Inc."
},
@@ -14,9 +14,9 @@
},
"labels": {
"template": "datagrid65-https",
- "xpaas": "1.4.7"
+ "xpaas": "1.4.8"
},
- "message": "A new data grid service has been created in your project. It supports connector type(s) \"${INFINISPAN_CONNECTORS}\". Please be sure to create the \"datagrid-service-account\" service account and the following secrets: \"${HTTPS_SECRET}\" containing the ${HTTPS_KEYSTORE} file used for serving secure content; \"${JGROUPS_ENCRYPT_SECRET}\" containing the ${JGROUPS_ENCRYPT_KEYSTORE} file used for securing JGroups communications.",
+ "message": "A new data grid service has been created in your project. It supports connector type(s) \"${INFINISPAN_CONNECTORS}\". Please be sure to create the following secrets: \"${HTTPS_SECRET}\" containing the ${HTTPS_KEYSTORE} file used for serving secure content; \"${JGROUPS_ENCRYPT_SECRET}\" containing the ${JGROUPS_ENCRYPT_KEYSTORE} file used for securing JGroups communications.",
"parameters": [
{
"displayName": "Application Name",
@@ -172,6 +172,12 @@
"from": "[a-zA-Z0-9]{8}",
"generate": "expression",
"required": true
+ },
+ {
+ "description": "Container memory limit",
+ "name": "MEMORY_LIMIT",
+ "value": "1Gi",
+ "required": false
}
],
"objects": [
@@ -272,6 +278,32 @@
}
},
{
+ "kind": "Service",
+ "apiVersion": "v1",
+ "spec": {
+ "clusterIP": "None",
+ "ports": [
+ {
+ "name": "ping",
+ "port": 8888
+ }
+ ],
+ "selector": {
+ "deploymentConfig": "${APPLICATION_NAME}"
+ }
+ },
+ "metadata": {
+ "name": "${APPLICATION_NAME}-ping",
+ "labels": {
+ "application": "${APPLICATION_NAME}"
+ },
+ "annotations": {
+ "service.alpha.kubernetes.io/tolerate-unready-endpoints": "true",
+ "description": "The JGroups ping port for clustering."
+ }
+ }
+ },
+ {
"kind": "Route",
"apiVersion": "v1",
"id": "${APPLICATION_NAME}-http",
@@ -338,7 +370,7 @@
"from": {
"kind": "ImageStreamTag",
"namespace": "${IMAGE_STREAM_NAMESPACE}",
- "name": "jboss-datagrid65-openshift:1.5"
+ "name": "jboss-datagrid65-openshift:1.6"
}
}
},
@@ -359,13 +391,17 @@
}
},
"spec": {
- "serviceAccountName": "datagrid-service-account",
"terminationGracePeriodSeconds": 60,
"containers": [
{
"name": "${APPLICATION_NAME}",
"image": "jboss-datagrid65-openshift",
"imagePullPolicy": "Always",
+ "resources": {
+ "limits": {
+ "memory": "${MEMORY_LIMIT}"
+ }
+ },
"volumeMounts": [
{
"name": "datagrid-keystore-volume",
@@ -385,7 +421,8 @@
"-c",
"/opt/datagrid/bin/livenessProbe.sh"
]
- }
+ },
+ "initialDelaySeconds": 60
},
"readinessProbe": {
"exec": {
@@ -459,16 +496,16 @@
"value": "${HTTPS_PASSWORD}"
},
{
- "name": "OPENSHIFT_KUBE_PING_LABELS",
- "value": "application=${APPLICATION_NAME}"
+ "name": "JGROUPS_PING_PROTOCOL",
+ "value": "openshift.DNS_PING"
+ },
+ {
+ "name": "OPENSHIFT_DNS_PING_SERVICE_NAME",
+ "value": "${APPLICATION_NAME}-ping"
},
{
- "name": "OPENSHIFT_KUBE_PING_NAMESPACE",
- "valueFrom": {
- "fieldRef": {
- "fieldPath": "metadata.namespace"
- }
- }
+ "name": "OPENSHIFT_DNS_PING_SERVICE_PORT",
+ "value": "8888"
},
{
"name": "INFINISPAN_CONNECTORS",
diff --git a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/datagrid65-mysql-persistent.json b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/datagrid65-mysql-persistent.json
index 018132668..51bb4f047 100644
--- a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/datagrid65-mysql-persistent.json
+++ b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/datagrid65-mysql-persistent.json
@@ -5,7 +5,7 @@
"annotations": {
"iconClass": "icon-datagrid",
"tags": "datagrid,jboss",
- "version": "1.4.7",
+ "version": "1.4.8",
"openshift.io/display-name": "JBoss Data Grid 6.5 + MySQL (with https)",
"openshift.io/provider-display-name": "Red Hat, Inc.",
"description": "An example JBoss Data Grid application with a MySQL database. For more information about using this template, see https://github.com/jboss-openshift/application-templates.",
@@ -17,9 +17,9 @@
},
"labels": {
"template": "datagrid65-mysql-persistent",
- "xpaas": "1.4.7"
+ "xpaas": "1.4.8"
},
- "message": "A new data grid service (using MySQL with persistent storage) has been created in your project. It supports connector type(s) \"${INFINISPAN_CONNECTORS}\". The username/password for accessing the MySQL database \"${DB_DATABASE}\" is ${DB_USERNAME}/${DB_PASSWORD}. Please be sure to create the \"datagrid-service-account\" service account and the following secrets: \"${HTTPS_SECRET}\" containing the ${HTTPS_KEYSTORE} file used for serving secure content; \"${JGROUPS_ENCRYPT_SECRET}\" containing the ${JGROUPS_ENCRYPT_KEYSTORE} file used for securing JGroups communications.",
+ "message": "A new data grid service (using MySQL with persistent storage) has been created in your project. It supports connector type(s) \"${INFINISPAN_CONNECTORS}\". The username/password for accessing the MySQL database \"${DB_DATABASE}\" is ${DB_USERNAME}/${DB_PASSWORD}. Please be sure to create the following secrets: \"${HTTPS_SECRET}\" containing the ${HTTPS_KEYSTORE} file used for serving secure content; \"${JGROUPS_ENCRYPT_SECRET}\" containing the ${JGROUPS_ENCRYPT_KEYSTORE} file used for securing JGroups communications.",
"parameters": [
{
"displayName": "Application Name",
@@ -166,7 +166,7 @@
"displayName": "Database Volume Capacity",
"description": "Size of persistent storage for database volume.",
"name": "VOLUME_CAPACITY",
- "value": "512Mi",
+ "value": "1Gi",
"required": true
},
{
@@ -267,6 +267,12 @@
"name": "MYSQL_IMAGE_STREAM_TAG",
"value": "5.7",
"required": true
+ },
+ {
+ "description": "Container memory limit",
+ "name": "MEMORY_LIMIT",
+ "value": "1Gi",
+ "required": false
}
],
"objects": [
@@ -395,6 +401,32 @@
}
},
{
+ "kind": "Service",
+ "apiVersion": "v1",
+ "spec": {
+ "clusterIP": "None",
+ "ports": [
+ {
+ "name": "ping",
+ "port": 8888
+ }
+ ],
+ "selector": {
+ "deploymentConfig": "${APPLICATION_NAME}"
+ }
+ },
+ "metadata": {
+ "name": "${APPLICATION_NAME}-ping",
+ "labels": {
+ "application": "${APPLICATION_NAME}"
+ },
+ "annotations": {
+ "service.alpha.kubernetes.io/tolerate-unready-endpoints": "true",
+ "description": "The JGroups ping port for clustering."
+ }
+ }
+ },
+ {
"kind": "Route",
"apiVersion": "v1",
"id": "${APPLICATION_NAME}-http",
@@ -461,7 +493,7 @@
"from": {
"kind": "ImageStreamTag",
"namespace": "${IMAGE_STREAM_NAMESPACE}",
- "name": "jboss-datagrid65-openshift:1.5"
+ "name": "jboss-datagrid65-openshift:1.6"
}
}
},
@@ -482,13 +514,17 @@
}
},
"spec": {
- "serviceAccountName": "datagrid-service-account",
"terminationGracePeriodSeconds": 60,
"containers": [
{
"name": "${APPLICATION_NAME}",
"image": "jboss-datagrid65-openshift",
"imagePullPolicy": "Always",
+ "resources": {
+ "limits": {
+ "memory": "${MEMORY_LIMIT}"
+ }
+ },
"volumeMounts": [
{
"name": "datagrid-keystore-volume",
@@ -508,7 +544,8 @@
"-c",
"/opt/datagrid/bin/livenessProbe.sh"
]
- }
+ },
+ "initialDelaySeconds": 60
},
"readinessProbe": {
"exec": {
@@ -634,16 +671,16 @@
"value": "${DB_JNDI}"
},
{
- "name": "OPENSHIFT_KUBE_PING_LABELS",
- "value": "application=${APPLICATION_NAME}"
+ "name": "JGROUPS_PING_PROTOCOL",
+ "value": "openshift.DNS_PING"
+ },
+ {
+ "name": "OPENSHIFT_DNS_PING_SERVICE_NAME",
+ "value": "${APPLICATION_NAME}-ping"
},
{
- "name": "OPENSHIFT_KUBE_PING_NAMESPACE",
- "valueFrom": {
- "fieldRef": {
- "fieldPath": "metadata.namespace"
- }
- }
+ "name": "OPENSHIFT_DNS_PING_SERVICE_PORT",
+ "value": "8888"
},
{
"name": "INFINISPAN_CONNECTORS",
diff --git a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/datagrid65-mysql.json b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/datagrid65-mysql.json
index 1e8ca1b51..b7914b6ab 100644
--- a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/datagrid65-mysql.json
+++ b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/datagrid65-mysql.json
@@ -6,7 +6,7 @@
"iconClass": "icon-datagrid",
"description": "Application template for JDG 6.5 and MySQL applications.",
"tags": "datagrid,jboss,hidden",
- "version": "1.4.7",
+ "version": "1.4.8",
"openshift.io/display-name": "JBoss Data Grid 6.5 + MySQL (Ephemeral with https)",
"openshift.io/provider-display-name": "Red Hat, Inc."
},
@@ -14,9 +14,9 @@
},
"labels": {
"template": "datagrid65-mysql",
- "xpaas": "1.4.7"
+ "xpaas": "1.4.8"
},
- "message": "A new data grid service (using MySQL) has been created in your project. It supports connector type(s) \"${INFINISPAN_CONNECTORS}\". The username/password for accessing the MySQL database \"${DB_DATABASE}\" is ${DB_USERNAME}/${DB_PASSWORD}. Please be sure to create the \"datagrid-service-account\" service account and the following secrets: \"${HTTPS_SECRET}\" containing the ${HTTPS_KEYSTORE} file used for serving secure content; \"${JGROUPS_ENCRYPT_SECRET}\" containing the ${JGROUPS_ENCRYPT_KEYSTORE} file used for securing JGroups communications.",
+ "message": "A new data grid service (using MySQL) has been created in your project. It supports connector type(s) \"${INFINISPAN_CONNECTORS}\". The username/password for accessing the MySQL database \"${DB_DATABASE}\" is ${DB_USERNAME}/${DB_PASSWORD}. Please be sure to create the following secrets: \"${HTTPS_SECRET}\" containing the ${HTTPS_KEYSTORE} file used for serving secure content; \"${JGROUPS_ENCRYPT_SECRET}\" containing the ${JGROUPS_ENCRYPT_KEYSTORE} file used for securing JGroups communications.",
"parameters": [
{
"displayName": "Application Name",
@@ -257,6 +257,12 @@
"name": "MYSQL_IMAGE_STREAM_TAG",
"value": "5.7",
"required": true
+ },
+ {
+ "description": "Container memory limit",
+ "name": "MEMORY_LIMIT",
+ "value": "1Gi",
+ "required": false
}
],
"objects": [
@@ -385,6 +391,32 @@
}
},
{
+ "kind": "Service",
+ "apiVersion": "v1",
+ "spec": {
+ "clusterIP": "None",
+ "ports": [
+ {
+ "name": "ping",
+ "port": 8888
+ }
+ ],
+ "selector": {
+ "deploymentConfig": "${APPLICATION_NAME}"
+ }
+ },
+ "metadata": {
+ "name": "${APPLICATION_NAME}-ping",
+ "labels": {
+ "application": "${APPLICATION_NAME}"
+ },
+ "annotations": {
+ "service.alpha.kubernetes.io/tolerate-unready-endpoints": "true",
+ "description": "The JGroups ping port for clustering."
+ }
+ }
+ },
+ {
"kind": "Route",
"apiVersion": "v1",
"id": "${APPLICATION_NAME}-http",
@@ -451,7 +483,7 @@
"from": {
"kind": "ImageStreamTag",
"namespace": "${IMAGE_STREAM_NAMESPACE}",
- "name": "jboss-datagrid65-openshift:1.5"
+ "name": "jboss-datagrid65-openshift:1.6"
}
}
},
@@ -472,13 +504,17 @@
}
},
"spec": {
- "serviceAccountName": "datagrid-service-account",
"terminationGracePeriodSeconds": 60,
"containers": [
{
"name": "${APPLICATION_NAME}",
"image": "jboss-datagrid65-openshift",
"imagePullPolicy": "Always",
+ "resources": {
+ "limits": {
+ "memory": "${MEMORY_LIMIT}"
+ }
+ },
"volumeMounts": [
{
"name": "datagrid-keystore-volume",
@@ -498,7 +534,8 @@
"-c",
"/opt/datagrid/bin/livenessProbe.sh"
]
- }
+ },
+ "initialDelaySeconds": 60
},
"readinessProbe": {
"exec": {
@@ -624,16 +661,16 @@
"value": "${DB_JNDI}"
},
{
- "name": "OPENSHIFT_KUBE_PING_LABELS",
- "value": "application=${APPLICATION_NAME}"
+ "name": "JGROUPS_PING_PROTOCOL",
+ "value": "openshift.DNS_PING"
+ },
+ {
+ "name": "OPENSHIFT_DNS_PING_SERVICE_NAME",
+ "value": "${APPLICATION_NAME}-ping"
},
{
- "name": "OPENSHIFT_KUBE_PING_NAMESPACE",
- "valueFrom": {
- "fieldRef": {
- "fieldPath": "metadata.namespace"
- }
- }
+ "name": "OPENSHIFT_DNS_PING_SERVICE_PORT",
+ "value": "8888"
},
{
"name": "INFINISPAN_CONNECTORS",
@@ -805,8 +842,22 @@
"name": "MYSQL_AIO",
"value": "${MYSQL_AIO}"
}
+ ],
+ "volumeMounts": [
+ {
+ "mountPath": "/var/lib/mysql/data",
+ "name": "${APPLICATION_NAME}-data"
+ }
]
}
+ ],
+ "volumes": [
+ {
+ "emptyDir": {
+ "medium": ""
+ },
+ "name": "${APPLICATION_NAME}-data"
+ }
]
}
}
diff --git a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/datagrid65-postgresql-persistent.json b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/datagrid65-postgresql-persistent.json
index 4a1d818c9..f77590173 100644
--- a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/datagrid65-postgresql-persistent.json
+++ b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/datagrid65-postgresql-persistent.json
@@ -6,7 +6,7 @@
"iconClass": "icon-datagrid",
"description": "Application template for JDG 6.5 and PostgreSQL applications with persistent storage.",
"tags": "datagrid,jboss,hidden",
- "version": "1.4.7",
+ "version": "1.4.8",
"openshift.io/display-name": "JBoss Data Grid 6.5 + PostgreSQL (with https)",
"openshift.io/provider-display-name": "Red Hat, Inc.",
"description": "An example JBoss Data Grid application with a PostgreSQL database. For more information about using this template, see https://github.com/jboss-openshift/application-templates.",
@@ -18,9 +18,9 @@
},
"labels": {
"template": "datagrid65-postgresql-persistent",
- "xpaas": "1.4.7"
+ "xpaas": "1.4.8"
},
- "message": "A new data grid service (using PostgreSQL with persistent storage) has been created in your project. It supports connector type(s) \"${INFINISPAN_CONNECTORS}\". The username/password for accessing the MySQL database \"${DB_DATABASE}\" is ${DB_USERNAME}/${DB_PASSWORD}. Please be sure to create the \"datagrid-service-account\" service account and the following secrets: \"${HTTPS_SECRET}\" containing the ${HTTPS_KEYSTORE} file used for serving secure content; \"${JGROUPS_ENCRYPT_SECRET}\" containing the ${JGROUPS_ENCRYPT_KEYSTORE} file used for securing JGroups communications.",
+ "message": "A new data grid service (using PostgreSQL with persistent storage) has been created in your project. It supports connector type(s) \"${INFINISPAN_CONNECTORS}\". The username/password for accessing the MySQL database \"${DB_DATABASE}\" is ${DB_USERNAME}/${DB_PASSWORD}. Please be sure to create the following secrets: \"${HTTPS_SECRET}\" containing the ${HTTPS_KEYSTORE} file used for serving secure content; \"${JGROUPS_ENCRYPT_SECRET}\" containing the ${JGROUPS_ENCRYPT_KEYSTORE} file used for securing JGroups communications.",
"parameters": [
{
"displayName": "Application Name",
@@ -149,7 +149,7 @@
"displayName": "Database Volume Capacity",
"description": "Size of persistent storage for database volume.",
"name": "VOLUME_CAPACITY",
- "value": "512Mi",
+ "value": "1Gi",
"required": true
},
{
@@ -250,6 +250,12 @@
"name": "POSTGRESQL_IMAGE_STREAM_TAG",
"value": "9.5",
"required": true
+ },
+ {
+ "description": "Container memory limit",
+ "name": "MEMORY_LIMIT",
+ "value": "1Gi",
+ "required": false
}
],
"objects": [
@@ -376,6 +382,32 @@
}
},
{
+ "kind": "Service",
+ "apiVersion": "v1",
+ "spec": {
+ "clusterIP": "None",
+ "ports": [
+ {
+ "name": "ping",
+ "port": 8888
+ }
+ ],
+ "selector": {
+ "deploymentConfig": "${APPLICATION_NAME}"
+ }
+ },
+ "metadata": {
+ "name": "${APPLICATION_NAME}-ping",
+ "labels": {
+ "application": "${APPLICATION_NAME}"
+ },
+ "annotations": {
+ "service.alpha.kubernetes.io/tolerate-unready-endpoints": "true",
+ "description": "The JGroups ping port for clustering."
+ }
+ }
+ },
+ {
"kind": "Route",
"apiVersion": "v1",
"id": "${APPLICATION_NAME}-http",
@@ -442,7 +474,7 @@
"from": {
"kind": "ImageStreamTag",
"namespace": "${IMAGE_STREAM_NAMESPACE}",
- "name": "jboss-datagrid65-openshift:1.5"
+ "name": "jboss-datagrid65-openshift:1.6"
}
}
},
@@ -463,13 +495,17 @@
}
},
"spec": {
- "serviceAccountName": "datagrid-service-account",
"terminationGracePeriodSeconds": 60,
"containers": [
{
"name": "${APPLICATION_NAME}",
"image": "jboss-datagrid65-openshift",
"imagePullPolicy": "Always",
+ "resources": {
+ "limits": {
+ "memory": "${MEMORY_LIMIT}"
+ }
+ },
"volumeMounts": [
{
"name": "datagrid-keystore-volume",
@@ -489,7 +525,8 @@
"-c",
"/opt/datagrid/bin/livenessProbe.sh"
]
- }
+ },
+ "initialDelaySeconds": 60
},
"readinessProbe": {
"exec": {
@@ -615,16 +652,16 @@
"value": "${DB_JNDI}"
},
{
- "name": "OPENSHIFT_KUBE_PING_LABELS",
- "value": "application=${APPLICATION_NAME}"
+ "name": "JGROUPS_PING_PROTOCOL",
+ "value": "openshift.DNS_PING"
+ },
+ {
+ "name": "OPENSHIFT_DNS_PING_SERVICE_NAME",
+ "value": "${APPLICATION_NAME}-ping"
},
{
- "name": "OPENSHIFT_KUBE_PING_NAMESPACE",
- "valueFrom": {
- "fieldRef": {
- "fieldPath": "metadata.namespace"
- }
- }
+ "name": "OPENSHIFT_DNS_PING_SERVICE_PORT",
+ "value": "8888"
},
{
"name": "INFINISPAN_CONNECTORS",
diff --git a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/datagrid65-postgresql.json b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/datagrid65-postgresql.json
index d97bdfa75..991bec03a 100644
--- a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/datagrid65-postgresql.json
+++ b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/datagrid65-postgresql.json
@@ -6,7 +6,7 @@
"iconClass": "icon-datagrid",
"description": "Application template for JDG 6.5 and PostgreSQL applications built using.",
"tags": "datagrid,jboss,hidden",
- "version": "1.4.7",
+ "version": "1.4.8",
"openshift.io/display-name": "JBoss Data Grid 6.5 + PostgreSQL (Ephemeral with https)",
"openshift.io/provider-display-name": "Red Hat, Inc."
},
@@ -14,9 +14,9 @@
},
"labels": {
"template": "datagrid65-postgresql",
- "xpaas": "1.4.7"
+ "xpaas": "1.4.8"
},
- "message": "A new data grid service (using PostgreSQL) has been created in your project. It supports connector type(s) \"${INFINISPAN_CONNECTORS}\". The username/password for accessing the MySQL database \"${DB_DATABASE}\" is ${DB_USERNAME}/${DB_PASSWORD}. Please be sure to create the \"datagrid-service-account\" service account and the following secrets: \"${HTTPS_SECRET}\" containing the ${HTTPS_KEYSTORE} file used for serving secure content; \"${JGROUPS_ENCRYPT_SECRET}\" containing the ${JGROUPS_ENCRYPT_KEYSTORE} file used for securing JGroups communications.",
+ "message": "A new data grid service (using PostgreSQL) has been created in your project. It supports connector type(s) \"${INFINISPAN_CONNECTORS}\". The username/password for accessing the MySQL database \"${DB_DATABASE}\" is ${DB_USERNAME}/${DB_PASSWORD}. Please be sure to create the following secrets: \"${HTTPS_SECRET}\" containing the ${HTTPS_KEYSTORE} file used for serving secure content; \"${JGROUPS_ENCRYPT_SECRET}\" containing the ${JGROUPS_ENCRYPT_KEYSTORE} file used for securing JGroups communications.",
"parameters": [
{
"displayName": "Application Name",
@@ -239,6 +239,12 @@
"name": "POSTGRESQL_IMAGE_STREAM_TAG",
"value": "9.5",
"required": true
+ },
+ {
+ "description": "Container memory limit",
+ "name": "MEMORY_LIMIT",
+ "value": "1Gi",
+ "required": false
}
],
"objects": [
@@ -365,6 +371,32 @@
}
},
{
+ "kind": "Service",
+ "apiVersion": "v1",
+ "spec": {
+ "clusterIP": "None",
+ "ports": [
+ {
+ "name": "ping",
+ "port": 8888
+ }
+ ],
+ "selector": {
+ "deploymentConfig": "${APPLICATION_NAME}"
+ }
+ },
+ "metadata": {
+ "name": "${APPLICATION_NAME}-ping",
+ "labels": {
+ "application": "${APPLICATION_NAME}"
+ },
+ "annotations": {
+ "service.alpha.kubernetes.io/tolerate-unready-endpoints": "true",
+ "description": "The JGroups ping port for clustering."
+ }
+ }
+ },
+ {
"kind": "Route",
"apiVersion": "v1",
"id": "${APPLICATION_NAME}-http",
@@ -431,7 +463,7 @@
"from": {
"kind": "ImageStreamTag",
"namespace": "${IMAGE_STREAM_NAMESPACE}",
- "name": "jboss-datagrid65-openshift:1.5"
+ "name": "jboss-datagrid65-openshift:1.6"
}
}
},
@@ -452,13 +484,17 @@
}
},
"spec": {
- "serviceAccountName": "datagrid-service-account",
"terminationGracePeriodSeconds": 60,
"containers": [
{
"name": "${APPLICATION_NAME}",
"image": "jboss-datagrid65-openshift",
"imagePullPolicy": "Always",
+ "resources": {
+ "limits": {
+ "memory": "${MEMORY_LIMIT}"
+ }
+ },
"volumeMounts": [
{
"name": "datagrid-keystore-volume",
@@ -478,7 +514,8 @@
"-c",
"/opt/datagrid/bin/livenessProbe.sh"
]
- }
+ },
+ "initialDelaySeconds": 60
},
"readinessProbe": {
"exec": {
@@ -604,16 +641,16 @@
"value": "${DB_JNDI}"
},
{
- "name": "OPENSHIFT_KUBE_PING_LABELS",
- "value": "application=${APPLICATION_NAME}"
+ "name": "JGROUPS_PING_PROTOCOL",
+ "value": "openshift.DNS_PING"
+ },
+ {
+ "name": "OPENSHIFT_DNS_PING_SERVICE_NAME",
+ "value": "${APPLICATION_NAME}-ping"
},
{
- "name": "OPENSHIFT_KUBE_PING_NAMESPACE",
- "valueFrom": {
- "fieldRef": {
- "fieldPath": "metadata.namespace"
- }
- }
+ "name": "OPENSHIFT_DNS_PING_SERVICE_PORT",
+ "value": "8888"
},
{
"name": "INFINISPAN_CONNECTORS",
@@ -777,8 +814,22 @@
"name": "POSTGRESQL_SHARED_BUFFERS",
"value": "${POSTGRESQL_SHARED_BUFFERS}"
}
+ ],
+ "volumeMounts": [
+ {
+ "mountPath": "/var/lib/pgsql/data",
+ "name": "${APPLICATION_NAME}-data"
+ }
]
}
+ ],
+ "volumes": [
+ {
+ "emptyDir": {
+ "medium": ""
+ },
+ "name": "${APPLICATION_NAME}-data"
+ }
]
}
}
diff --git a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/datagrid71-basic.json b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/datagrid71-basic.json
index d4b83da34..66e900045 100644
--- a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/datagrid71-basic.json
+++ b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/datagrid71-basic.json
@@ -5,7 +5,7 @@
"annotations": {
"iconClass": "icon-datagrid",
"tags": "datagrid,jboss",
- "version": "1.4.7",
+ "version": "1.4.8",
"openshift.io/display-name": "JBoss Data Grid 7.1 (Ephemeral, no https)",
"openshift.io/provider-display-name": "Red Hat, Inc.",
"description": "An example JBoss Data Grid application. For more information about using this template, see https://github.com/jboss-openshift/application-templates.",
@@ -17,7 +17,7 @@
},
"labels": {
"template": "datagrid71-basic",
- "xpaas": "1.4.7"
+ "xpaas": "1.4.8"
},
"message": "A new data grid service has been created in your project. It supports connector type(s) \"${INFINISPAN_CONNECTORS}\".",
"parameters": [
@@ -140,6 +140,12 @@
"from": "[a-zA-Z0-9]{8}",
"generate": "expression",
"required": true
+ },
+ {
+ "description": "Container memory limit",
+ "name": "MEMORY_LIMIT",
+ "value": "1Gi",
+ "required": false
}
],
"objects": [
@@ -216,6 +222,32 @@
}
},
{
+ "kind": "Service",
+ "apiVersion": "v1",
+ "spec": {
+ "clusterIP": "None",
+ "ports": [
+ {
+ "name": "ping",
+ "port": 8888
+ }
+ ],
+ "selector": {
+ "deploymentConfig": "${APPLICATION_NAME}"
+ }
+ },
+ "metadata": {
+ "name": "${APPLICATION_NAME}-ping",
+ "labels": {
+ "application": "${APPLICATION_NAME}"
+ },
+ "annotations": {
+ "service.alpha.kubernetes.io/tolerate-unready-endpoints": "true",
+ "description": "The JGroups ping port for clustering."
+ }
+ }
+ },
+ {
"kind": "Route",
"apiVersion": "v1",
"id": "${APPLICATION_NAME}-http",
@@ -259,7 +291,7 @@
"from": {
"kind": "ImageStreamTag",
"namespace": "${IMAGE_STREAM_NAMESPACE}",
- "name": "jboss-datagrid71-openshift:1.1"
+ "name": "jboss-datagrid71-openshift:1.2"
}
}
},
@@ -286,6 +318,11 @@
"name": "${APPLICATION_NAME}",
"image": "jboss-datagrid71-openshift",
"imagePullPolicy": "Always",
+ "resources": {
+ "limits": {
+ "memory": "${MEMORY_LIMIT}"
+ }
+ },
"livenessProbe": {
"exec": {
"command": [
@@ -293,7 +330,8 @@
"-c",
"/opt/datagrid/bin/livenessProbe.sh"
]
- }
+ },
+ "initialDelaySeconds": 60
},
"readinessProbe": {
"exec": {
@@ -362,16 +400,16 @@
"value": "${CONTAINER_SECURITY_ROLES}"
},
{
- "name": "OPENSHIFT_KUBE_PING_LABELS",
- "value": "application=${APPLICATION_NAME}"
+ "name": "JGROUPS_PING_PROTOCOL",
+ "value": "openshift.DNS_PING"
+ },
+ {
+ "name": "OPENSHIFT_DNS_PING_SERVICE_NAME",
+ "value": "${APPLICATION_NAME}-ping"
},
{
- "name": "OPENSHIFT_KUBE_PING_NAMESPACE",
- "valueFrom": {
- "fieldRef": {
- "fieldPath": "metadata.namespace"
- }
- }
+ "name": "OPENSHIFT_DNS_PING_SERVICE_PORT",
+ "value": "8888"
},
{
"name": "INFINISPAN_CONNECTORS",
diff --git a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/datagrid71-https.json b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/datagrid71-https.json
index 2a46bd3a2..6d092cbc9 100644
--- a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/datagrid71-https.json
+++ b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/datagrid71-https.json
@@ -5,7 +5,7 @@
"annotations": {
"iconClass": "icon-datagrid",
"tags": "datagrid,jboss,hidden",
- "version": "1.4.7",
+ "version": "1.4.8",
"openshift.io/display-name": "JBoss Data Grid 7.1 (Ephemeral with https)",
"openshift.io/provider-display-name": "Red Hat, Inc.",
"description": "An example JBoss Data Grid application. For more information about using this template, see https://github.com/jboss-openshift/application-templates.",
@@ -17,9 +17,9 @@
},
"labels": {
"template": "datagrid71-https",
- "xpaas": "1.4.7"
+ "xpaas": "1.4.8"
},
- "message": "A new data grid service has been created in your project. It supports connector type(s) \"${INFINISPAN_CONNECTORS}\". Please be sure to create the \"datagrid-service-account\" service account and the following secrets: \"${HTTPS_SECRET}\" containing the ${HTTPS_KEYSTORE} file used for serving secure content; \"${JGROUPS_ENCRYPT_SECRET}\" containing the ${JGROUPS_ENCRYPT_KEYSTORE} file used for securing JGroups communications.",
+ "message": "A new data grid service has been created in your project. It supports connector type(s) \"${INFINISPAN_CONNECTORS}\". Please be sure to create the following secrets: \"${HTTPS_SECRET}\" containing the ${HTTPS_KEYSTORE} file used for serving secure content; \"${JGROUPS_ENCRYPT_SECRET}\" containing the ${JGROUPS_ENCRYPT_KEYSTORE} file used for securing JGroups communications.",
"parameters": [
{
"displayName": "Application Name",
@@ -203,6 +203,12 @@
"from": "[a-zA-Z0-9]{8}",
"generate": "expression",
"required": true
+ },
+ {
+ "description": "Container memory limit",
+ "name": "MEMORY_LIMIT",
+ "value": "1Gi",
+ "required": false
}
],
"objects": [
@@ -303,6 +309,32 @@
}
},
{
+ "kind": "Service",
+ "apiVersion": "v1",
+ "spec": {
+ "clusterIP": "None",
+ "ports": [
+ {
+ "name": "ping",
+ "port": 8888
+ }
+ ],
+ "selector": {
+ "deploymentConfig": "${APPLICATION_NAME}"
+ }
+ },
+ "metadata": {
+ "name": "${APPLICATION_NAME}-ping",
+ "labels": {
+ "application": "${APPLICATION_NAME}"
+ },
+ "annotations": {
+ "service.alpha.kubernetes.io/tolerate-unready-endpoints": "true",
+ "description": "The JGroups ping port for clustering."
+ }
+ }
+ },
+ {
"kind": "Route",
"apiVersion": "v1",
"id": "${APPLICATION_NAME}-http",
@@ -369,7 +401,7 @@
"from": {
"kind": "ImageStreamTag",
"namespace": "${IMAGE_STREAM_NAMESPACE}",
- "name": "jboss-datagrid71-openshift:1.1"
+ "name": "jboss-datagrid71-openshift:1.2"
}
}
},
@@ -390,13 +422,17 @@
}
},
"spec": {
- "serviceAccountName": "datagrid-service-account",
"terminationGracePeriodSeconds": 60,
"containers": [
{
"name": "${APPLICATION_NAME}",
"image": "jboss-datagrid71-openshift",
"imagePullPolicy": "Always",
+ "resources": {
+ "limits": {
+ "memory": "${MEMORY_LIMIT}"
+ }
+ },
"volumeMounts": [
{
"name": "datagrid-keystore-volume",
@@ -416,7 +452,8 @@
"-c",
"/opt/datagrid/bin/livenessProbe.sh"
]
- }
+ },
+ "initialDelaySeconds": 60
},
"readinessProbe": {
"exec": {
@@ -506,16 +543,16 @@
"value": "${HTTPS_PASSWORD}"
},
{
- "name": "OPENSHIFT_KUBE_PING_LABELS",
- "value": "application=${APPLICATION_NAME}"
+ "name": "JGROUPS_PING_PROTOCOL",
+ "value": "openshift.DNS_PING"
+ },
+ {
+ "name": "OPENSHIFT_DNS_PING_SERVICE_NAME",
+ "value": "${APPLICATION_NAME}-ping"
},
{
- "name": "OPENSHIFT_KUBE_PING_NAMESPACE",
- "valueFrom": {
- "fieldRef": {
- "fieldPath": "metadata.namespace"
- }
- }
+ "name": "OPENSHIFT_DNS_PING_SERVICE_PORT",
+ "value": "8888"
},
{
"name": "INFINISPAN_CONNECTORS",
diff --git a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/datagrid71-mysql-persistent.json b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/datagrid71-mysql-persistent.json
index 72bdf2037..96f7b4b1f 100644
--- a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/datagrid71-mysql-persistent.json
+++ b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/datagrid71-mysql-persistent.json
@@ -5,7 +5,7 @@
"annotations": {
"iconClass": "icon-datagrid",
"tags": "datagrid,jboss",
- "version": "1.4.7",
+ "version": "1.4.8",
"openshift.io/display-name": "JBoss Data Grid 7.1 + MySQL (with https)",
"openshift.io/provider-display-name": "Red Hat, Inc.",
"description": "An example JBoss Data Grid application with a MySQL database. For more information about using this template, see https://github.com/jboss-openshift/application-templates.",
@@ -17,9 +17,9 @@
},
"labels": {
"template": "datagrid71-mysql-persistent",
- "xpaas": "1.4.7"
+ "xpaas": "1.4.8"
},
- "message": "A new data grid service (using MySQL with persistent storage) has been created in your project. It supports connector type(s) \"${INFINISPAN_CONNECTORS}\". The username/password for accessing the MySQL database \"${DB_DATABASE}\" is ${DB_USERNAME}/${DB_PASSWORD}. Please be sure to create the \"datagrid-service-account\" service account and the following secrets: \"${HTTPS_SECRET}\" containing the ${HTTPS_KEYSTORE} file used for serving secure content; \"${JGROUPS_ENCRYPT_SECRET}\" containing the ${JGROUPS_ENCRYPT_KEYSTORE} file used for securing JGroups communications.",
+ "message": "A new data grid service (using MySQL with persistent storage) has been created in your project. It supports connector type(s) \"${INFINISPAN_CONNECTORS}\". The username/password for accessing the MySQL database \"${DB_DATABASE}\" is ${DB_USERNAME}/${DB_PASSWORD}. Please be sure to create the following secrets: \"${HTTPS_SECRET}\" containing the ${HTTPS_KEYSTORE} file used for serving secure content; \"${JGROUPS_ENCRYPT_SECRET}\" containing the ${JGROUPS_ENCRYPT_KEYSTORE} file used for securing JGroups communications.",
"parameters": [
{
"displayName": "Application Name",
@@ -194,7 +194,7 @@
"displayName": "Database Volume Capacity",
"description": "Size of persistent storage for database volume.",
"name": "VOLUME_CAPACITY",
- "value": "512Mi",
+ "value": "1Gi",
"required": true
},
{
@@ -295,6 +295,12 @@
"name": "MYSQL_IMAGE_STREAM_TAG",
"value": "5.7",
"required": true
+ },
+ {
+ "description": "Container memory limit",
+ "name": "MEMORY_LIMIT",
+ "value": "1Gi",
+ "required": false
}
],
"objects": [
@@ -423,6 +429,32 @@
}
},
{
+ "kind": "Service",
+ "apiVersion": "v1",
+ "spec": {
+ "clusterIP": "None",
+ "ports": [
+ {
+ "name": "ping",
+ "port": 8888
+ }
+ ],
+ "selector": {
+ "deploymentConfig": "${APPLICATION_NAME}"
+ }
+ },
+ "metadata": {
+ "name": "${APPLICATION_NAME}-ping",
+ "labels": {
+ "application": "${APPLICATION_NAME}"
+ },
+ "annotations": {
+ "service.alpha.kubernetes.io/tolerate-unready-endpoints": "true",
+ "description": "The JGroups ping port for clustering."
+ }
+ }
+ },
+ {
"kind": "Route",
"apiVersion": "v1",
"id": "${APPLICATION_NAME}-http",
@@ -489,7 +521,7 @@
"from": {
"kind": "ImageStreamTag",
"namespace": "${IMAGE_STREAM_NAMESPACE}",
- "name": "jboss-datagrid71-openshift:1.1"
+ "name": "jboss-datagrid71-openshift:1.2"
}
}
},
@@ -510,13 +542,17 @@
}
},
"spec": {
- "serviceAccountName": "datagrid-service-account",
"terminationGracePeriodSeconds": 60,
"containers": [
{
"name": "${APPLICATION_NAME}",
"image": "jboss-datagrid71-openshift",
"imagePullPolicy": "Always",
+ "resources": {
+ "limits": {
+ "memory": "${MEMORY_LIMIT}"
+ }
+ },
"volumeMounts": [
{
"name": "datagrid-keystore-volume",
@@ -536,7 +572,8 @@
"-c",
"/opt/datagrid/bin/livenessProbe.sh"
]
- }
+ },
+ "initialDelaySeconds": 60
},
"readinessProbe": {
"exec": {
@@ -678,16 +715,16 @@
"value": "${DB_JNDI}"
},
{
- "name": "OPENSHIFT_KUBE_PING_LABELS",
- "value": "application=${APPLICATION_NAME}"
+ "name": "JGROUPS_PING_PROTOCOL",
+ "value": "openshift.DNS_PING"
+ },
+ {
+ "name": "OPENSHIFT_DNS_PING_SERVICE_NAME",
+ "value": "${APPLICATION_NAME}-ping"
},
{
- "name": "OPENSHIFT_KUBE_PING_NAMESPACE",
- "valueFrom": {
- "fieldRef": {
- "fieldPath": "metadata.namespace"
- }
- }
+ "name": "OPENSHIFT_DNS_PING_SERVICE_PORT",
+ "value": "8888"
},
{
"name": "INFINISPAN_CONNECTORS",
diff --git a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/datagrid71-mysql.json b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/datagrid71-mysql.json
index 99f97a7c7..690fe1575 100644
--- a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/datagrid71-mysql.json
+++ b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/datagrid71-mysql.json
@@ -5,7 +5,7 @@
"annotations": {
"iconClass": "icon-datagrid",
"tags": "datagrid,jboss,hidden",
- "version": "1.4.7",
+ "version": "1.4.8",
"openshift.io/display-name": "JBoss Data Grid 7.1 + MySQL (Ephemeral with https)",
"openshift.io/provider-display-name": "Red Hat, Inc.",
"description": "An example JBoss Data Grid application with a MySQL database. For more information about using this template, see https://github.com/jboss-openshift/application-templates.",
@@ -17,9 +17,9 @@
},
"labels": {
"template": "datagrid71-mysql",
- "xpaas": "1.4.7"
+ "xpaas": "1.4.8"
},
- "message": "A new data grid service (using MySQL) has been created in your project. It supports connector type(s) \"${INFINISPAN_CONNECTORS}\". The username/password for accessing the MySQL database \"${DB_DATABASE}\" is ${DB_USERNAME}/${DB_PASSWORD}. Please be sure to create the \"datagrid-service-account\" service account and the following secrets: \"${HTTPS_SECRET}\" containing the ${HTTPS_KEYSTORE} file used for serving secure content; \"${JGROUPS_ENCRYPT_SECRET}\" containing the ${JGROUPS_ENCRYPT_KEYSTORE} file used for securing JGroups communications.",
+ "message": "A new data grid service (using MySQL) has been created in your project. It supports connector type(s) \"${INFINISPAN_CONNECTORS}\". The username/password for accessing the MySQL database \"${DB_DATABASE}\" is ${DB_USERNAME}/${DB_PASSWORD}. Please be sure to create the following secrets: \"${HTTPS_SECRET}\" containing the ${HTTPS_KEYSTORE} file used for serving secure content; \"${JGROUPS_ENCRYPT_SECRET}\" containing the ${JGROUPS_ENCRYPT_KEYSTORE} file used for securing JGroups communications.",
"parameters": [
{
"displayName": "Application Name",
@@ -288,6 +288,12 @@
"name": "MYSQL_IMAGE_STREAM_TAG",
"value": "5.7",
"required": true
+ },
+ {
+ "description": "Container memory limit",
+ "name": "MEMORY_LIMIT",
+ "value": "1Gi",
+ "required": false
}
],
"objects": [
@@ -416,6 +422,32 @@
}
},
{
+ "kind": "Service",
+ "apiVersion": "v1",
+ "spec": {
+ "clusterIP": "None",
+ "ports": [
+ {
+ "name": "ping",
+ "port": 8888
+ }
+ ],
+ "selector": {
+ "deploymentConfig": "${APPLICATION_NAME}"
+ }
+ },
+ "metadata": {
+ "name": "${APPLICATION_NAME}-ping",
+ "labels": {
+ "application": "${APPLICATION_NAME}"
+ },
+ "annotations": {
+ "service.alpha.kubernetes.io/tolerate-unready-endpoints": "true",
+ "description": "The JGroups ping port for clustering."
+ }
+ }
+ },
+ {
"kind": "Route",
"apiVersion": "v1",
"id": "${APPLICATION_NAME}-http",
@@ -482,7 +514,7 @@
"from": {
"kind": "ImageStreamTag",
"namespace": "${IMAGE_STREAM_NAMESPACE}",
- "name": "jboss-datagrid71-openshift:1.1"
+ "name": "jboss-datagrid71-openshift:1.2"
}
}
},
@@ -503,13 +535,17 @@
}
},
"spec": {
- "serviceAccountName": "datagrid-service-account",
"terminationGracePeriodSeconds": 60,
"containers": [
{
"name": "${APPLICATION_NAME}",
"image": "jboss-datagrid71-openshift",
"imagePullPolicy": "Always",
+ "resources": {
+ "limits": {
+ "memory": "${MEMORY_LIMIT}"
+ }
+ },
"volumeMounts": [
{
"name": "datagrid-keystore-volume",
@@ -529,7 +565,8 @@
"-c",
"/opt/datagrid/bin/livenessProbe.sh"
]
- }
+ },
+ "initialDelaySeconds": 60
},
"readinessProbe": {
"exec": {
@@ -671,16 +708,16 @@
"value": "${DB_JNDI}"
},
{
- "name": "OPENSHIFT_KUBE_PING_LABELS",
- "value": "application=${APPLICATION_NAME}"
+ "name": "JGROUPS_PING_PROTOCOL",
+ "value": "openshift.DNS_PING"
+ },
+ {
+ "name": "OPENSHIFT_DNS_PING_SERVICE_NAME",
+ "value": "${APPLICATION_NAME}-ping"
},
{
- "name": "OPENSHIFT_KUBE_PING_NAMESPACE",
- "valueFrom": {
- "fieldRef": {
- "fieldPath": "metadata.namespace"
- }
- }
+ "name": "OPENSHIFT_DNS_PING_SERVICE_PORT",
+ "value": "8888"
},
{
"name": "INFINISPAN_CONNECTORS",
@@ -852,8 +889,22 @@
"name": "MYSQL_AIO",
"value": "${MYSQL_AIO}"
}
+ ],
+ "volumeMounts": [
+ {
+ "mountPath": "/var/lib/mysql/data",
+ "name": "${APPLICATION_NAME}-data"
+ }
]
}
+ ],
+ "volumes": [
+ {
+ "emptyDir": {
+ "medium": ""
+ },
+ "name": "${APPLICATION_NAME}-data"
+ }
]
}
}
diff --git a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/datagrid71-partition.json b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/datagrid71-partition.json
index baf17dbbb..06e9f13e7 100644
--- a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/datagrid71-partition.json
+++ b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/datagrid71-partition.json
@@ -5,7 +5,7 @@
"annotations": {
"iconClass": "icon-datagrid",
"tags": "datagrid,jboss,hidden",
- "version": "1.4.7",
+ "version": "1.4.8",
"openshift.io/display-name": "JBoss Data Grid 7.1 (Ephemeral, no https)",
"openshift.io/provider-display-name": "Red Hat, Inc.",
"description": "An example JBoss Data Grid application. For more information about using this template, see https://github.com/jboss-openshift/application-templates.",
@@ -17,7 +17,7 @@
},
"labels": {
"template": "datagrid71-partition",
- "xpaas": "1.4.0"
+ "xpaas": "1.4.8"
},
"message": "A new data grid service has been created in your project. It supports connector type(s) \"${INFINISPAN_CONNECTORS}\".",
"parameters": [
@@ -145,7 +145,7 @@
"displayName": "Datagrid Volume Size",
"description": "Size of the volume used by Datagrid for persisting metadata.",
"name": "VOLUME_CAPACITY",
- "value": "512Mi",
+ "value": "1Gi",
"required": true
},
{
@@ -154,6 +154,12 @@
"name": "DATAGRID_SPLIT",
"value": "true",
"required": false
+ },
+ {
+ "description": "Container memory limit",
+ "name": "MEMORY_LIMIT",
+ "value": "1Gi",
+ "required": false
}
],
"objects": [
@@ -254,6 +260,32 @@
}
},
{
+ "kind": "Service",
+ "apiVersion": "v1",
+ "spec": {
+ "clusterIP": "None",
+ "ports": [
+ {
+ "name": "ping",
+ "port": 8888
+ }
+ ],
+ "selector": {
+ "deploymentConfig": "${APPLICATION_NAME}"
+ }
+ },
+ "metadata": {
+ "name": "${APPLICATION_NAME}-ping",
+ "labels": {
+ "application": "${APPLICATION_NAME}"
+ },
+ "annotations": {
+ "service.alpha.kubernetes.io/tolerate-unready-endpoints": "true",
+ "description": "The JGroups ping port for clustering."
+ }
+ }
+ },
+ {
"kind": "Route",
"apiVersion": "v1",
"id": "${APPLICATION_NAME}-http",
@@ -297,7 +329,7 @@
"from": {
"kind": "ImageStreamTag",
"namespace": "${IMAGE_STREAM_NAMESPACE}",
- "name": "jboss-datagrid71-openshift:1.1"
+ "name": "jboss-datagrid71-openshift:1.2"
}
}
},
@@ -324,6 +356,11 @@
"name": "${APPLICATION_NAME}",
"image": "jboss-datagrid71-openshift",
"imagePullPolicy": "Always",
+ "resources": {
+ "limits": {
+ "memory": "${MEMORY_LIMIT}"
+ }
+ },
"volumeMounts": [
{
"mountPath": "/opt/datagrid/standalone/partitioned_data",
@@ -337,7 +374,8 @@
"-c",
"/opt/datagrid/bin/livenessProbe.sh"
]
- }
+ },
+ "initialDelaySeconds": 60
},
"readinessProbe": {
"exec": {
@@ -395,16 +433,16 @@
"value": "${PASSWORD}"
},
{
- "name": "OPENSHIFT_KUBE_PING_LABELS",
- "value": "application=${APPLICATION_NAME}"
+ "name": "JGROUPS_PING_PROTOCOL",
+ "value": "openshift.DNS_PING"
+ },
+ {
+ "name": "OPENSHIFT_DNS_PING_SERVICE_NAME",
+ "value": "${APPLICATION_NAME}-ping"
},
{
- "name": "OPENSHIFT_KUBE_PING_NAMESPACE",
- "valueFrom": {
- "fieldRef": {
- "fieldPath": "metadata.namespace"
- }
- }
+ "name": "OPENSHIFT_DNS_PING_SERVICE_PORT",
+ "value": "8888"
},
{
"name": "INFINISPAN_CONNECTORS",
diff --git a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/datagrid71-postgresql-persistent.json b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/datagrid71-postgresql-persistent.json
index 5cd6e854a..49f2a1c25 100644
--- a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/datagrid71-postgresql-persistent.json
+++ b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/datagrid71-postgresql-persistent.json
@@ -5,7 +5,7 @@
"annotations": {
"iconClass": "icon-datagrid",
"tags": "datagrid,jboss",
- "version": "1.4.7",
+ "version": "1.4.8",
"openshift.io/display-name": "JBoss Data Grid 7.1 + PostgreSQL (with https)",
"openshift.io/provider-display-name": "Red Hat, Inc.",
"description": "An example JBoss Data Grid application with a PostgreSQL database. For more information about using this template, see https://github.com/jboss-openshift/application-templates.",
@@ -17,9 +17,9 @@
},
"labels": {
"template": "datagrid71-postgresql-persistent",
- "xpaas": "1.4.7"
+ "xpaas": "1.4.8"
},
- "message": "A new data grid service (using PostgreSQL with persistent storage) has been created in your project. It supports connector type(s) \"${INFINISPAN_CONNECTORS}\". The username/password for accessing the MySQL database \"${DB_DATABASE}\" is ${DB_USERNAME}/${DB_PASSWORD}. Please be sure to create the \"datagrid-service-account\" service account and the following secrets: \"${HTTPS_SECRET}\" containing the ${HTTPS_KEYSTORE} file used for serving secure content; \"${JGROUPS_ENCRYPT_SECRET}\" containing the ${JGROUPS_ENCRYPT_KEYSTORE} file used for securing JGroups communications.",
+ "message": "A new data grid service (using PostgreSQL with persistent storage) has been created in your project. It supports connector type(s) \"${INFINISPAN_CONNECTORS}\". The username/password for accessing the MySQL database \"${DB_DATABASE}\" is ${DB_USERNAME}/${DB_PASSWORD}. Please be sure to create the following secrets: \"${HTTPS_SECRET}\" containing the ${HTTPS_KEYSTORE} file used for serving secure content; \"${JGROUPS_ENCRYPT_SECRET}\" containing the ${JGROUPS_ENCRYPT_KEYSTORE} file used for securing JGroups communications.",
"parameters": [
{
"displayName": "Application Name",
@@ -176,7 +176,7 @@
"displayName": "Database Volume Capacity",
"description": "Size of persistent storage for database volume.",
"name": "VOLUME_CAPACITY",
- "value": "512Mi",
+ "value": "1Gi",
"required": true
},
{
@@ -277,6 +277,12 @@
"name": "POSTGRESQL_IMAGE_STREAM_TAG",
"value": "9.5",
"required": true
+ },
+ {
+ "description": "Container memory limit",
+ "name": "MEMORY_LIMIT",
+ "value": "1Gi",
+ "required": false
}
],
"objects": [
@@ -403,6 +409,32 @@
}
},
{
+ "kind": "Service",
+ "apiVersion": "v1",
+ "spec": {
+ "clusterIP": "None",
+ "ports": [
+ {
+ "name": "ping",
+ "port": 8888
+ }
+ ],
+ "selector": {
+ "deploymentConfig": "${APPLICATION_NAME}"
+ }
+ },
+ "metadata": {
+ "name": "${APPLICATION_NAME}-ping",
+ "labels": {
+ "application": "${APPLICATION_NAME}"
+ },
+ "annotations": {
+ "service.alpha.kubernetes.io/tolerate-unready-endpoints": "true",
+ "description": "The JGroups ping port for clustering."
+ }
+ }
+ },
+ {
"kind": "Route",
"apiVersion": "v1",
"id": "${APPLICATION_NAME}-http",
@@ -469,7 +501,7 @@
"from": {
"kind": "ImageStreamTag",
"namespace": "${IMAGE_STREAM_NAMESPACE}",
- "name": "jboss-datagrid71-openshift:1.1"
+ "name": "jboss-datagrid71-openshift:1.2"
}
}
},
@@ -490,13 +522,17 @@
}
},
"spec": {
- "serviceAccountName": "datagrid-service-account",
"terminationGracePeriodSeconds": 60,
"containers": [
{
"name": "${APPLICATION_NAME}",
"image": "jboss-datagrid71-openshift",
"imagePullPolicy": "Always",
+ "resources": {
+ "limits": {
+ "memory": "${MEMORY_LIMIT}"
+ }
+ },
"volumeMounts": [
{
"name": "datagrid-keystore-volume",
@@ -516,7 +552,8 @@
"-c",
"/opt/datagrid/bin/livenessProbe.sh"
]
- }
+ },
+ "initialDelaySeconds": 60
},
"readinessProbe": {
"exec": {
@@ -658,16 +695,16 @@
"value": "${DB_JNDI}"
},
{
- "name": "OPENSHIFT_KUBE_PING_LABELS",
- "value": "application=${APPLICATION_NAME}"
+ "name": "JGROUPS_PING_PROTOCOL",
+ "value": "openshift.DNS_PING"
+ },
+ {
+ "name": "OPENSHIFT_DNS_PING_SERVICE_NAME",
+ "value": "${APPLICATION_NAME}-ping"
},
{
- "name": "OPENSHIFT_KUBE_PING_NAMESPACE",
- "valueFrom": {
- "fieldRef": {
- "fieldPath": "metadata.namespace"
- }
- }
+ "name": "OPENSHIFT_DNS_PING_SERVICE_PORT",
+ "value": "8888"
},
{
"name": "INFINISPAN_CONNECTORS",
diff --git a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/datagrid71-postgresql.json b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/datagrid71-postgresql.json
index 505d67750..f9839389a 100644
--- a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/datagrid71-postgresql.json
+++ b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/datagrid71-postgresql.json
@@ -5,7 +5,7 @@
"annotations": {
"iconClass": "icon-datagrid",
"tags": "datagrid,jboss,hidden",
- "version": "1.4.7",
+ "version": "1.4.8",
"openshift.io/display-name": "JBoss Data Grid 7.1 + PostgreSQL (Ephemeral with https)",
"openshift.io/provider-display-name": "Red Hat, Inc.",
"description": "An example JBoss Data Grid application with a PostgreSQL database. For more information about using this template, see https://github.com/jboss-openshift/application-templates.",
@@ -17,9 +17,9 @@
},
"labels": {
"template": "datagrid71-postgresql",
- "xpaas": "1.4.7"
+ "xpaas": "1.4.8"
},
- "message": "A new data grid service (using PostgreSQL) has been created in your project. It supports connector type(s) \"${INFINISPAN_CONNECTORS}\". The username/password for accessing the MySQL database \"${DB_DATABASE}\" is ${DB_USERNAME}/${DB_PASSWORD}. Please be sure to create the \"datagrid-service-account\" service account and the following secrets: \"${HTTPS_SECRET}\" containing the ${HTTPS_KEYSTORE} file used for serving secure content; \"${JGROUPS_ENCRYPT_SECRET}\" containing the ${JGROUPS_ENCRYPT_KEYSTORE} file used for securing JGroups communications.",
+ "message": "A new data grid service (using PostgreSQL) has been created in your project. It supports connector type(s) \"${INFINISPAN_CONNECTORS}\". The username/password for accessing the MySQL database \"${DB_DATABASE}\" is ${DB_USERNAME}/${DB_PASSWORD}. Please be sure to create the following secrets: \"${HTTPS_SECRET}\" containing the ${HTTPS_KEYSTORE} file used for serving secure content; \"${JGROUPS_ENCRYPT_SECRET}\" containing the ${JGROUPS_ENCRYPT_KEYSTORE} file used for securing JGroups communications.",
"parameters": [
{
"displayName": "Application Name",
@@ -270,6 +270,12 @@
"name": "POSTGRESQL_IMAGE_STREAM_TAG",
"value": "9.5",
"required": true
+ },
+ {
+ "description": "Container memory limit",
+ "name": "MEMORY_LIMIT",
+ "value": "1Gi",
+ "required": false
}
],
"objects": [
@@ -396,6 +402,32 @@
}
},
{
+ "kind": "Service",
+ "apiVersion": "v1",
+ "spec": {
+ "clusterIP": "None",
+ "ports": [
+ {
+ "name": "ping",
+ "port": 8888
+ }
+ ],
+ "selector": {
+ "deploymentConfig": "${APPLICATION_NAME}"
+ }
+ },
+ "metadata": {
+ "name": "${APPLICATION_NAME}-ping",
+ "labels": {
+ "application": "${APPLICATION_NAME}"
+ },
+ "annotations": {
+ "service.alpha.kubernetes.io/tolerate-unready-endpoints": "true",
+ "description": "The JGroups ping port for clustering."
+ }
+ }
+ },
+ {
"kind": "Route",
"apiVersion": "v1",
"id": "${APPLICATION_NAME}-http",
@@ -462,7 +494,7 @@
"from": {
"kind": "ImageStreamTag",
"namespace": "${IMAGE_STREAM_NAMESPACE}",
- "name": "jboss-datagrid71-openshift:1.1"
+ "name": "jboss-datagrid71-openshift:1.2"
}
}
},
@@ -483,13 +515,17 @@
}
},
"spec": {
- "serviceAccountName": "datagrid-service-account",
"terminationGracePeriodSeconds": 60,
"containers": [
{
"name": "${APPLICATION_NAME}",
"image": "jboss-datagrid71-openshift",
"imagePullPolicy": "Always",
+ "resources": {
+ "limits": {
+ "memory": "${MEMORY_LIMIT}"
+ }
+ },
"volumeMounts": [
{
"name": "datagrid-keystore-volume",
@@ -509,7 +545,8 @@
"-c",
"/opt/datagrid/bin/livenessProbe.sh"
]
- }
+ },
+ "initialDelaySeconds": 60
},
"readinessProbe": {
"exec": {
@@ -651,16 +688,16 @@
"value": "${DB_JNDI}"
},
{
- "name": "OPENSHIFT_KUBE_PING_LABELS",
- "value": "application=${APPLICATION_NAME}"
+ "name": "JGROUPS_PING_PROTOCOL",
+ "value": "openshift.DNS_PING"
+ },
+ {
+ "name": "OPENSHIFT_DNS_PING_SERVICE_NAME",
+ "value": "${APPLICATION_NAME}-ping"
},
{
- "name": "OPENSHIFT_KUBE_PING_NAMESPACE",
- "valueFrom": {
- "fieldRef": {
- "fieldPath": "metadata.namespace"
- }
- }
+ "name": "OPENSHIFT_DNS_PING_SERVICE_PORT",
+ "value": "8888"
},
{
"name": "INFINISPAN_CONNECTORS",
@@ -824,8 +861,22 @@
"name": "POSTGRESQL_SHARED_BUFFERS",
"value": "${POSTGRESQL_SHARED_BUFFERS}"
}
+ ],
+ "volumeMounts": [
+ {
+ "mountPath": "/var/lib/pgsql/data",
+ "name": "${APPLICATION_NAME}-data"
+ }
]
}
+ ],
+ "volumes": [
+ {
+ "emptyDir": {
+ "medium": ""
+ },
+ "name": "${APPLICATION_NAME}-data"
+ }
]
}
}
diff --git a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/datavirt63-basic-s2i.json b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/datavirt63-basic-s2i.json
index b6885d6f6..275500830 100644
--- a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/datavirt63-basic-s2i.json
+++ b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/datavirt63-basic-s2i.json
@@ -6,7 +6,7 @@
"iconClass": "icon-datavirt",
"description": "Application template for JBoss Data Virtualization 6.3 services built using S2I.",
"tags": "jdv,datavirt,database,jboss",
- "version": "1.4.7",
+ "version": "1.4.8",
"openshift.io/display-name": "JBoss Data Virtualization 6.3 (no SSL)",
"openshift.io/provider-display-name": "Red Hat, Inc."
},
@@ -14,9 +14,9 @@
},
"labels": {
"template": "datavirt63-basic-s2i",
- "xpaas": "1.4.7"
+ "xpaas": "1.4.8"
},
- "message": "A new data service has been created in your project. The username/password for accessing the service is ${TEIID_USERNAME}/${TEIID_PASSWORD}. Please be sure to create the \"${SERVICE_ACCOUNT_NAME}\" service account and the secret named ${CONFIGURATION_NAME} containing the datasource configuration details required by the deployed VDB(s).",
+ "message": "A new data service has been created in your project. The username/password for accessing the service is ${TEIID_USERNAME}/${TEIID_PASSWORD}. Please be sure to create the secret named ${CONFIGURATION_NAME} containing the datasource configuration details required by the deployed VDB(s).",
"parameters": [
{
"description": "The name for the application.",
@@ -61,13 +61,6 @@
"required": false
},
{
- "description": "The name of the service account to use for the deployment. The service account should be configured to allow usage of the secret specified by CONFIGURATION_NAME.",
- "displayName": "Service Account Name",
- "name": "SERVICE_ACCOUNT_NAME",
- "value": "datavirt-service-account",
- "required": true
- },
- {
"description": "Username associated with Teiid data service.",
"displayName": "Teiid Username",
"name": "TEIID_USERNAME",
@@ -157,6 +150,12 @@
"name": "ARTIFACT_DIR",
"value": "",
"required": false
+ },
+ {
+ "description": "Container memory limit",
+ "name": "MEMORY_LIMIT",
+ "value": "1Gi",
+ "required": false
}
],
"objects": [
@@ -196,6 +195,32 @@
}
},
{
+ "kind": "Service",
+ "apiVersion": "v1",
+ "spec": {
+ "clusterIP": "None",
+ "ports": [
+ {
+ "name": "ping",
+ "port": 8888
+ }
+ ],
+ "selector": {
+ "deploymentConfig": "${APPLICATION_NAME}"
+ }
+ },
+ "metadata": {
+ "name": "${APPLICATION_NAME}-ping",
+ "labels": {
+ "application": "${APPLICATION_NAME}"
+ },
+ "annotations": {
+ "service.alpha.kubernetes.io/tolerate-unready-endpoints": "true",
+ "description": "The JGroups ping port for clustering."
+ }
+ }
+ },
+ {
"kind": "Route",
"apiVersion": "v1",
"id": "${APPLICATION_NAME}-http",
@@ -268,7 +293,7 @@
"from": {
"kind": "ImageStreamTag",
"namespace": "${IMAGE_STREAM_NAMESPACE}",
- "name": "jboss-datavirt63-openshift:1.3"
+ "name": "jboss-datavirt63-openshift:1.4"
},
"env": [
{
@@ -372,13 +397,17 @@
}
},
"spec": {
- "serviceAccountName": "${SERVICE_ACCOUNT_NAME}",
"terminationGracePeriodSeconds": 60,
"containers": [
{
"name": "${APPLICATION_NAME}",
"image": "${APPLICATION_NAME}",
"imagePullPolicy": "Always",
+ "resources": {
+ "limits": {
+ "memory": "${MEMORY_LIMIT}"
+ }
+ },
"volumeMounts": [
{
"name": "configuration",
@@ -393,7 +422,8 @@
"-c",
"/opt/eap/bin/livenessProbe.sh"
]
- }
+ },
+ "initialDelaySeconds": 60
},
"readinessProbe": {
"exec": {
@@ -433,16 +463,16 @@
],
"env": [
{
- "name": "OPENSHIFT_KUBE_PING_LABELS",
- "value": "application=${APPLICATION_NAME}"
+ "name": "JGROUPS_PING_PROTOCOL",
+ "value": "openshift.DNS_PING"
+ },
+ {
+ "name": "OPENSHIFT_DNS_PING_SERVICE_NAME",
+ "value": "${APPLICATION_NAME}-ping"
},
{
- "name": "OPENSHIFT_KUBE_PING_NAMESPACE",
- "valueFrom": {
- "fieldRef": {
- "fieldPath": "metadata.namespace"
- }
- }
+ "name": "OPENSHIFT_DNS_PING_SERVICE_PORT",
+ "value": "8888"
},
{
"name": "JGROUPS_CLUSTER_PASSWORD",
diff --git a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/datavirt63-extensions-support-s2i.json b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/datavirt63-extensions-support-s2i.json
index a06f714a7..f5f4532b6 100644
--- a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/datavirt63-extensions-support-s2i.json
+++ b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/datavirt63-extensions-support-s2i.json
@@ -5,7 +5,7 @@
"annotations": {
"iconClass": "icon-datavirt",
"tags": "jdv,datavirt,database,jboss",
- "version": "1.4.7",
+ "version": "1.4.8",
"openshift.io/display-name": "JBoss Data Virtualization 6.3 (with SSL and Extensions)",
"openshift.io/provider-display-name": "Red Hat, Inc.",
"description": "An example JBoss Data Virtualization application. For more information about using this template, see https://github.com/jboss-openshift/application-templates.",
@@ -17,9 +17,9 @@
},
"labels": {
"template": "datavirt63-extensions-support-s2i",
- "xpaas": "1.4.7"
+ "xpaas": "1.4.8"
},
- "message": "A new data service has been created in your project. The username/password for accessing the service is ${TEIID_USERNAME}/${TEIID_PASSWORD}. Please be sure to create the \"${SERVICE_ACCOUNT_NAME}\" service account and the following secrets: \"${CONFIGURATION_NAME}\" containing the datasource configuration details required by the deployed VDB(s); \"${HTTPS_SECRET}\" containing the ${HTTPS_KEYSTORE} file used for serving secure content; \"${JGROUPS_ENCRYPT_SECRET}\" containing the ${JGROUPS_ENCRYPT_KEYSTORE} file used for securing JGroups communications.",
+ "message": "A new data service has been created in your project. The username/password for accessing the service is ${TEIID_USERNAME}/${TEIID_PASSWORD}. Please be sure to create the following secrets: \"${CONFIGURATION_NAME}\" containing the datasource configuration details required by the deployed VDB(s); \"${HTTPS_SECRET}\" containing the ${HTTPS_KEYSTORE} file used for serving secure content; \"${JGROUPS_ENCRYPT_SECRET}\" containing the ${JGROUPS_ENCRYPT_KEYSTORE} file used for securing JGroups communications.",
"parameters": [
{
"description": "The name for the application.",
@@ -106,13 +106,6 @@
"required": false
},
{
- "description": "The name of the service account to use for the deployment. The service account should be configured to allow usage of the secret(s) specified by CONFIGURATION_NAME, HTTPS_SECRET and JGROUPS_ENCRYPT_SECRET.",
- "displayName": "Service Account Name",
- "name": "SERVICE_ACCOUNT_NAME",
- "value": "datavirt-service-account",
- "required": true
- },
- {
"description": "The name of the secret containing the keystore to be used for serving secure content.",
"displayName": "Server Keystore Secret Name",
"name": "HTTPS_SECRET",
@@ -265,6 +258,12 @@
"name": "ARTIFACT_DIR",
"value": "",
"required": false
+ },
+ {
+ "description": "Container memory limit",
+ "name": "MEMORY_LIMIT",
+ "value": "1Gi",
+ "required": false
}
],
"objects": [
@@ -319,6 +318,32 @@
}
},
{
+ "kind": "Service",
+ "apiVersion": "v1",
+ "spec": {
+ "clusterIP": "None",
+ "ports": [
+ {
+ "name": "ping",
+ "port": 8888
+ }
+ ],
+ "selector": {
+ "deploymentConfig": "${APPLICATION_NAME}"
+ }
+ },
+ "metadata": {
+ "name": "${APPLICATION_NAME}-ping",
+ "labels": {
+ "application": "${APPLICATION_NAME}"
+ },
+ "annotations": {
+ "service.alpha.kubernetes.io/tolerate-unready-endpoints": "true",
+ "description": "The JGroups ping port for clustering."
+ }
+ }
+ },
+ {
"kind": "Route",
"apiVersion": "v1",
"id": "${APPLICATION_NAME}-http",
@@ -514,7 +539,7 @@
"from": {
"kind": "ImageStreamTag",
"namespace": "${IMAGE_STREAM_NAMESPACE}",
- "name": "jboss-datavirt63-openshift:1.3"
+ "name": "jboss-datavirt63-openshift:1.4"
},
"env": [
{
@@ -627,13 +652,17 @@
}
},
"spec": {
- "serviceAccountName": "${SERVICE_ACCOUNT_NAME}",
"terminationGracePeriodSeconds": 60,
"containers": [
{
"name": "${APPLICATION_NAME}",
"image": "${APPLICATION_NAME}",
"imagePullPolicy": "Always",
+ "resources": {
+ "limits": {
+ "memory": "${MEMORY_LIMIT}"
+ }
+ },
"volumeMounts": [
{
"name": "configuration",
@@ -658,7 +687,8 @@
"-c",
"/opt/eap/bin/livenessProbe.sh"
]
- }
+ },
+ "initialDelaySeconds": 60
},
"readinessProbe": {
"exec": {
@@ -713,16 +743,16 @@
],
"env": [
{
- "name": "OPENSHIFT_KUBE_PING_LABELS",
- "value": "application=${APPLICATION_NAME}"
+ "name": "JGROUPS_PING_PROTOCOL",
+ "value": "openshift.DNS_PING"
+ },
+ {
+ "name": "OPENSHIFT_DNS_PING_SERVICE_NAME",
+ "value": "${APPLICATION_NAME}-ping"
},
{
- "name": "OPENSHIFT_KUBE_PING_NAMESPACE",
- "valueFrom": {
- "fieldRef": {
- "fieldPath": "metadata.namespace"
- }
- }
+ "name": "OPENSHIFT_DNS_PING_SERVICE_PORT",
+ "value": "8888"
},
{
"name": "HTTPS_KEYSTORE_DIR",
diff --git a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/datavirt63-secure-s2i.json b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/datavirt63-secure-s2i.json
index 1758b1be0..202a57a1e 100644
--- a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/datavirt63-secure-s2i.json
+++ b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/datavirt63-secure-s2i.json
@@ -5,7 +5,7 @@
"annotations": {
"iconClass": "icon-datavirt",
"tags": "jdv,datavirt,database,jboss",
- "version": "1.4.7",
+ "version": "1.4.8",
"openshift.io/display-name": "JBoss Data Virtualization 6.3 (with SSL)",
"openshift.io/provider-display-name": "Red Hat, Inc.",
"description": "An example JBoss Data Virtualization application. For more information about using this template, see https://github.com/jboss-openshift/application-templates.",
@@ -17,9 +17,9 @@
},
"labels": {
"template": "datavirt63-secure-s2i",
- "xpaas": "1.4.7"
+ "xpaas": "1.4.8"
},
- "message": "A new data service has been created in your project. The username/password for accessing the service is ${TEIID_USERNAME}/${TEIID_PASSWORD}. Please be sure to create the \"${SERVICE_ACCOUNT_NAME}\" service account and the following secrets: \"${CONFIGURATION_NAME}\" containing the datasource configuration details required by the deployed VDB(s); \"${HTTPS_SECRET}\" containing the ${HTTPS_KEYSTORE} file used for serving secure content; \"${JGROUPS_ENCRYPT_SECRET}\" containing the ${JGROUPS_ENCRYPT_KEYSTORE} file used for securing JGroups communications.",
+ "message": "A new data service has been created in your project. The username/password for accessing the service is ${TEIID_USERNAME}/${TEIID_PASSWORD}. Please be sure to create the following secrets: \"${CONFIGURATION_NAME}\" containing the datasource configuration details required by the deployed VDB(s); \"${HTTPS_SECRET}\" containing the ${HTTPS_KEYSTORE} file used for serving secure content; \"${JGROUPS_ENCRYPT_SECRET}\" containing the ${JGROUPS_ENCRYPT_KEYSTORE} file used for securing JGroups communications.",
"parameters": [
{
"description": "The name for the application.",
@@ -78,13 +78,6 @@
"required": false
},
{
- "description": "The name of the service account to use for the deployment. The service account should be configured to allow usage of the secret(s) specified by CONFIGURATION_NAME, HTTPS_SECRET and JGROUPS_ENCRYPT_SECRET.",
- "displayName": "Service Account Name",
- "name": "SERVICE_ACCOUNT_NAME",
- "value": "datavirt-service-account",
- "required": true
- },
- {
"description": "The name of the secret containing the keystore to be used for serving secure content.",
"displayName": "Server Keystore Secret Name",
"name": "HTTPS_SECRET",
@@ -378,6 +371,12 @@
"name": "ARTIFACT_DIR",
"value": "",
"required": false
+ },
+ {
+ "description": "Container memory limit",
+ "name": "MEMORY_LIMIT",
+ "value": "1Gi",
+ "required": false
}
],
"objects": [
@@ -432,6 +431,32 @@
}
},
{
+ "kind": "Service",
+ "apiVersion": "v1",
+ "spec": {
+ "clusterIP": "None",
+ "ports": [
+ {
+ "name": "ping",
+ "port": 8888
+ }
+ ],
+ "selector": {
+ "deploymentConfig": "${APPLICATION_NAME}"
+ }
+ },
+ "metadata": {
+ "name": "${APPLICATION_NAME}-ping",
+ "labels": {
+ "application": "${APPLICATION_NAME}"
+ },
+ "annotations": {
+ "service.alpha.kubernetes.io/tolerate-unready-endpoints": "true",
+ "description": "The JGroups ping port for clustering."
+ }
+ }
+ },
+ {
"kind": "Route",
"apiVersion": "v1",
"id": "${APPLICATION_NAME}-http",
@@ -556,7 +581,7 @@
"from": {
"kind": "ImageStreamTag",
"namespace": "${IMAGE_STREAM_NAMESPACE}",
- "name": "jboss-datavirt63-openshift:1.3"
+ "name": "jboss-datavirt63-openshift:1.4"
},
"env": [
{
@@ -660,13 +685,17 @@
}
},
"spec": {
- "serviceAccountName": "${SERVICE_ACCOUNT_NAME}",
"terminationGracePeriodSeconds": 60,
"containers": [
{
"name": "${APPLICATION_NAME}",
"image": "${APPLICATION_NAME}",
"imagePullPolicy": "Always",
+ "resources": {
+ "limits": {
+ "memory": "${MEMORY_LIMIT}"
+ }
+ },
"volumeMounts": [
{
"name": "configuration",
@@ -691,7 +720,8 @@
"-c",
"/opt/eap/bin/livenessProbe.sh"
]
- }
+ },
+ "initialDelaySeconds": 60
},
"readinessProbe": {
"exec": {
@@ -746,16 +776,16 @@
],
"env": [
{
- "name": "OPENSHIFT_KUBE_PING_LABELS",
- "value": "application=${APPLICATION_NAME}"
+ "name": "JGROUPS_PING_PROTOCOL",
+ "value": "openshift.DNS_PING"
+ },
+ {
+ "name": "OPENSHIFT_DNS_PING_SERVICE_NAME",
+ "value": "${APPLICATION_NAME}-ping"
},
{
- "name": "OPENSHIFT_KUBE_PING_NAMESPACE",
- "valueFrom": {
- "fieldRef": {
- "fieldPath": "metadata.namespace"
- }
- }
+ "name": "OPENSHIFT_DNS_PING_SERVICE_PORT",
+ "value": "8888"
},
{
"name": "HTTPS_KEYSTORE_DIR",
diff --git a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/decisionserver64-amq-s2i.json b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/decisionserver64-amq-s2i.json
index 3006a7265..231c597f9 100644
--- a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/decisionserver64-amq-s2i.json
+++ b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/decisionserver64-amq-s2i.json
@@ -5,7 +5,7 @@
"annotations": {
"iconClass": "icon-decisionserver",
"tags": "decisionserver,jboss",
- "version": "1.4.7",
+ "version": "1.4.8",
"openshift.io/display-name": "JBoss BRMS 6.4 decision server + A-MQ (with https)",
"openshift.io/provider-display-name": "Red Hat, Inc.",
"description": "An example BRMS decision server A-MQ application. For more information about using this template, see https://github.com/jboss-openshift/application-templates.",
@@ -17,9 +17,9 @@
},
"labels": {
"template": "decisionserver64-amq-s2i",
- "xpaas": "1.4.7"
+ "xpaas": "1.4.8"
},
- "message": "A new BRMS/A-MQ application with SSL support has been created in your project. The username/password for accessing the KIE Server REST or JMS interface is ${KIE_SERVER_USER}/${KIE_SERVER_PASSWORD}. For accessing the A-MQ service use the credentials ${MQ_USERNAME}/${MQ_PASSWORD}. Please be sure to create the \"decisionserver-service-account\" service account and the secret named \"${HTTPS_SECRET}\" containing the ${HTTPS_KEYSTORE} file used for serving secure content.",
+ "message": "A new BRMS/A-MQ application with SSL support has been created in your project. The username/password for accessing the KIE Server REST or JMS interface is ${KIE_SERVER_USER}/${KIE_SERVER_PASSWORD}. For accessing the A-MQ service use the credentials ${MQ_USERNAME}/${MQ_PASSWORD}. Please be sure to create the secret named \"${HTTPS_SECRET}\" containing the ${HTTPS_KEYSTORE} file used for serving secure content.",
"parameters": [
{
"displayName": "KIE Container Deployment",
@@ -182,7 +182,7 @@
"displayName": "A-MQ Mesh Discovery Type",
"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",
+ "value": "dns",
"required": false
},
{
@@ -227,6 +227,12 @@
"name": "ARTIFACT_DIR",
"value": "",
"required": false
+ },
+ {
+ "description": "Container memory limit",
+ "name": "MEMORY_LIMIT",
+ "value": "1Gi",
+ "required": false
}
],
"objects": [
@@ -305,6 +311,32 @@
}
},
{
+ "kind": "Service",
+ "apiVersion": "v1",
+ "spec": {
+ "clusterIP": "None",
+ "ports": [
+ {
+ "name": "mesh",
+ "port": 61616
+ }
+ ],
+ "selector": {
+ "deploymentConfig": "${APPLICATION_NAME}-amq"
+ }
+ },
+ "metadata": {
+ "name": "${APPLICATION_NAME}-amq-mesh",
+ "labels": {
+ "application": "${APPLICATION_NAME}"
+ },
+ "annotations": {
+ "service.alpha.kubernetes.io/tolerate-unready-endpoints": "true",
+ "description": "Supports node discovery for mesh formation."
+ }
+ }
+ },
+ {
"kind": "Route",
"apiVersion": "v1",
"id": "${APPLICATION_NAME}-http",
@@ -396,7 +428,7 @@
"from": {
"kind": "ImageStreamTag",
"namespace": "${IMAGE_STREAM_NAMESPACE}",
- "name": "jboss-decisionserver64-openshift:1.1"
+ "name": "jboss-decisionserver64-openshift:1.2"
}
}
},
@@ -473,13 +505,17 @@
}
},
"spec": {
- "serviceAccountName": "decisionserver-service-account",
"terminationGracePeriodSeconds": 60,
"containers": [
{
"name": "${APPLICATION_NAME}",
"image": "${APPLICATION_NAME}",
"imagePullPolicy": "Always",
+ "resources": {
+ "limits": {
+ "memory": "${MEMORY_LIMIT}"
+ }
+ },
"volumeMounts": [
{
"name": "decisionserver-keystore-volume",
@@ -494,7 +530,8 @@
"-c",
"/opt/eap/bin/livenessProbe.sh"
]
- }
+ },
+ "initialDelaySeconds": 60
},
"readinessProbe": {
"exec": {
@@ -630,7 +667,7 @@
"from": {
"kind": "ImageStreamTag",
"namespace": "${IMAGE_STREAM_NAMESPACE}",
- "name": "jboss-amq-63:1.2"
+ "name": "jboss-amq-63:1.3"
}
}
},
@@ -727,7 +764,7 @@
},
{
"name": "AMQ_MESH_SERVICE_NAME",
- "value": "${APPLICATION_NAME}-amq-tcp"
+ "value": "${APPLICATION_NAME}-amq-mesh"
},
{
"name": "AMQ_MESH_SERVICE_NAMESPACE",
diff --git a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/decisionserver64-basic-s2i.json b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/decisionserver64-basic-s2i.json
index eaee9c1a5..6ed3c8a83 100644
--- a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/decisionserver64-basic-s2i.json
+++ b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/decisionserver64-basic-s2i.json
@@ -6,14 +6,14 @@
"description": "Application template for Red Hat JBoss BRMS 6.4 decision server applications built using S2I.",
"iconClass": "icon-decisionserver",
"tags": "decisionserver,jboss,xpaas",
- "version": "1.4.7",
+ "version": "1.4.8",
"openshift.io/display-name": "Red Hat JBoss BRMS 6.4 decision server (no https)"
},
"name": "decisionserver64-basic-s2i"
},
"labels": {
"template": "decisionserver64-basic-s2i",
- "xpaas": "1.4.7"
+ "xpaas": "1.4.8"
},
"message": "A new BRMS application has been created in your project. The username/password for accessing the KIE Server REST or JMS interface is ${KIE_SERVER_USER}/${KIE_SERVER_PASSWORD}.",
"parameters": [
@@ -131,6 +131,12 @@
"name": "ARTIFACT_DIR",
"value": "",
"required": false
+ },
+ {
+ "description": "Container memory limit",
+ "name": "MEMORY_LIMIT",
+ "value": "1Gi",
+ "required": false
}
],
"objects": [
@@ -227,7 +233,7 @@
"from": {
"kind": "ImageStreamTag",
"namespace": "${IMAGE_STREAM_NAMESPACE}",
- "name": "jboss-decisionserver64-openshift:1.1"
+ "name": "jboss-decisionserver64-openshift:1.2"
}
}
},
@@ -310,6 +316,11 @@
"name": "${APPLICATION_NAME}",
"image": "${APPLICATION_NAME}",
"imagePullPolicy": "Always",
+ "resources": {
+ "limits": {
+ "memory": "${MEMORY_LIMIT}"
+ }
+ },
"livenessProbe": {
"exec": {
"command": [
@@ -317,7 +328,8 @@
"-c",
"/opt/eap/bin/livenessProbe.sh"
]
- }
+ },
+ "initialDelaySeconds": 60
},
"readinessProbe": {
"exec": {
diff --git a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/decisionserver64-https-s2i.json b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/decisionserver64-https-s2i.json
index cb6eb1706..a57a30862 100644
--- a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/decisionserver64-https-s2i.json
+++ b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/decisionserver64-https-s2i.json
@@ -6,7 +6,7 @@
"description": "Application template for Red Hat JBoss BRMS 6.4 decision server HTTPS applications built using S2I.",
"iconClass": "icon-decisionserver",
"tags": "decisionserver,jboss",
- "version": "1.4.7",
+ "version": "1.4.8",
"openshift.io/display-name": "JBoss BRMS 6.4 decision server (with https)",
"openshift.io/provider-display-name": "Red Hat, Inc.",
"description": "An example BRMS decision server application. For more information about using this template, see https://github.com/jboss-openshift/application-templates.",
@@ -18,9 +18,9 @@
},
"labels": {
"template": "decisionserver64-https-s2i",
- "xpaas": "1.4.7"
+ "xpaas": "1.4.8"
},
- "message": "A new BRMS application with SSL support has been created in your project. The username/password for accessing the KIE Server REST or JMS interface is ${KIE_SERVER_USER}/${KIE_SERVER_PASSWORD}. Please be sure to create the \"decisionserver-service-account\" service account and the secret named \"${HTTPS_SECRET}\" containing the ${HTTPS_KEYSTORE} file used for serving secure content.",
+ "message": "A new BRMS application with SSL support has been created in your project. The username/password for accessing the KIE Server REST or JMS interface is ${KIE_SERVER_USER}/${KIE_SERVER_PASSWORD}. Please be sure to create the secret named \"${HTTPS_SECRET}\" containing the ${HTTPS_KEYSTORE} file used for serving secure content.",
"parameters": [
{
"displayName": "KIE Container Deployment",
@@ -185,6 +185,12 @@
"name": "ARTIFACT_DIR",
"value": "",
"required": false
+ },
+ {
+ "description": "Container memory limit",
+ "name": "MEMORY_LIMIT",
+ "value": "1Gi",
+ "required": false
}
],
"objects": [
@@ -328,7 +334,7 @@
"from": {
"kind": "ImageStreamTag",
"namespace": "${IMAGE_STREAM_NAMESPACE}",
- "name": "jboss-decisionserver64-openshift:1.1"
+ "name": "jboss-decisionserver64-openshift:1.2"
}
}
},
@@ -405,13 +411,17 @@
}
},
"spec": {
- "serviceAccountName": "decisionserver-service-account",
"terminationGracePeriodSeconds": 60,
"containers": [
{
"name": "${APPLICATION_NAME}",
"image": "${APPLICATION_NAME}",
"imagePullPolicy": "Always",
+ "resources": {
+ "limits": {
+ "memory": "${MEMORY_LIMIT}"
+ }
+ },
"volumeMounts": [
{
"name": "decisionserver-keystore-volume",
@@ -426,7 +436,8 @@
"-c",
"/opt/eap/bin/livenessProbe.sh"
]
- }
+ },
+ "initialDelaySeconds": 60
},
"readinessProbe": {
"exec": {
diff --git a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap64-amq-persistent-s2i.json b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap64-amq-persistent-s2i.json
index 9ebbfd06c..de62b246e 100644
--- a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap64-amq-persistent-s2i.json
+++ b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap64-amq-persistent-s2i.json
@@ -5,7 +5,7 @@
"annotations": {
"iconClass": "icon-eap",
"tags": "eap,javaee,java,jboss",
- "version": "1.4.7",
+ "version": "1.4.8",
"openshift.io/display-name": "JBoss EAP 6.4 + A-MQ (with https)",
"openshift.io/provider-display-name": "Red Hat, Inc.",
"description": "An example EAP 6 A-MQ application. For more information about using this template, see https://github.com/jboss-openshift/application-templates.",
@@ -17,9 +17,9 @@
},
"labels": {
"template": "eap64-amq-persistent-s2i",
- "xpaas": "1.4.7"
+ "xpaas": "1.4.8"
},
- "message": "A new EAP 6 and A-MQ persistent based application with SSL support has been created in your project. The username/password for accessing the A-MQ service is ${MQ_USERNAME}/${MQ_PASSWORD}. Please be sure to create the \"${SERVICE_ACCOUNT_NAME}\" service account and the following secrets: \"${HTTPS_SECRET}\" containing the ${HTTPS_KEYSTORE} file used for serving secure content; \"${JGROUPS_ENCRYPT_SECRET}\" containing the ${JGROUPS_ENCRYPT_KEYSTORE} file used for securing JGroups communications.",
+ "message": "A new EAP 6 and A-MQ persistent based application with SSL support has been created in your project. The username/password for accessing the A-MQ service is ${MQ_USERNAME}/${MQ_PASSWORD}. Please be sure to create the following secrets: \"${HTTPS_SECRET}\" containing the ${HTTPS_KEYSTORE} file used for serving secure content; \"${JGROUPS_ENCRYPT_SECRET}\" containing the ${JGROUPS_ENCRYPT_KEYSTORE} file used for securing JGroups communications.",
"parameters": [
{
"displayName": "Application Name",
@@ -67,7 +67,7 @@
"displayName": "A-MQ Volume Size",
"description": "Size of the volume used by A-MQ for persisting messages.",
"name": "VOLUME_CAPACITY",
- "value": "512Mi",
+ "value": "1Gi",
"required": true
},
{
@@ -113,13 +113,6 @@
"required": false
},
{
- "displayName": "Service Account Name",
- "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
- },
- {
"displayName": "Server Keystore Secret Name",
"description": "The name of the secret containing the keystore file",
"name": "HTTPS_SECRET",
@@ -174,7 +167,7 @@
"displayName": "A-MQ Mesh Discovery Type",
"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",
+ "value": "dns",
"required": false
},
{
@@ -262,6 +255,12 @@
"name": "ARTIFACT_DIR",
"value": "",
"required": false
+ },
+ {
+ "description": "Container memory limit",
+ "name": "MEMORY_LIMIT",
+ "value": "1Gi",
+ "required": false
}
],
"objects": [
@@ -319,6 +318,32 @@
"kind": "Service",
"apiVersion": "v1",
"spec": {
+ "clusterIP": "None",
+ "ports": [
+ {
+ "name": "ping",
+ "port": 8888
+ }
+ ],
+ "selector": {
+ "deploymentConfig": "${APPLICATION_NAME}"
+ }
+ },
+ "metadata": {
+ "name": "${APPLICATION_NAME}-ping",
+ "labels": {
+ "application": "${APPLICATION_NAME}"
+ },
+ "annotations": {
+ "service.alpha.kubernetes.io/tolerate-unready-endpoints": "true",
+ "description": "The JGroups ping port for clustering."
+ }
+ }
+ },
+ {
+ "kind": "Service",
+ "apiVersion": "v1",
+ "spec": {
"ports": [
{
"port": 61616,
@@ -340,6 +365,32 @@
}
},
{
+ "kind": "Service",
+ "apiVersion": "v1",
+ "spec": {
+ "clusterIP": "None",
+ "ports": [
+ {
+ "name": "mesh",
+ "port": 61616
+ }
+ ],
+ "selector": {
+ "deploymentConfig": "${APPLICATION_NAME}-amq"
+ }
+ },
+ "metadata": {
+ "name": "${APPLICATION_NAME}-amq-mesh",
+ "labels": {
+ "application": "${APPLICATION_NAME}"
+ },
+ "annotations": {
+ "service.alpha.kubernetes.io/tolerate-unready-endpoints": "true",
+ "description": "Supports node discovery for mesh formation."
+ }
+ }
+ },
+ {
"kind": "Route",
"apiVersion": "v1",
"id": "${APPLICATION_NAME}-http",
@@ -427,7 +478,7 @@
"from": {
"kind": "ImageStreamTag",
"namespace": "${IMAGE_STREAM_NAMESPACE}",
- "name": "jboss-eap64-openshift:1.6"
+ "name": "jboss-eap64-openshift:1.7"
}
}
},
@@ -504,13 +555,17 @@
}
},
"spec": {
- "serviceAccountName": "${SERVICE_ACCOUNT_NAME}",
"terminationGracePeriodSeconds": 60,
"containers": [
{
"name": "${APPLICATION_NAME}",
"image": "${APPLICATION_NAME}",
"imagePullPolicy": "Always",
+ "resources": {
+ "limits": {
+ "memory": "${MEMORY_LIMIT}"
+ }
+ },
"volumeMounts": [
{
"name": "eap-keystore-volume",
@@ -530,7 +585,8 @@
"-c",
"/opt/eap/bin/livenessProbe.sh"
]
- }
+ },
+ "initialDelaySeconds": 60
},
"readinessProbe": {
"exec": {
@@ -597,16 +653,16 @@
"value": "${MQ_SERIALIZABLE_PACKAGES}"
},
{
- "name": "OPENSHIFT_KUBE_PING_LABELS",
- "value": "application=${APPLICATION_NAME}"
+ "name": "JGROUPS_PING_PROTOCOL",
+ "value": "openshift.DNS_PING"
},
{
- "name": "OPENSHIFT_KUBE_PING_NAMESPACE",
- "valueFrom": {
- "fieldRef": {
- "fieldPath": "metadata.namespace"
- }
- }
+ "name": "OPENSHIFT_DNS_PING_SERVICE_NAME",
+ "value": "${APPLICATION_NAME}-ping"
+ },
+ {
+ "name": "OPENSHIFT_DNS_PING_SERVICE_PORT",
+ "value": "8888"
},
{
"name": "HTTPS_KEYSTORE_DIR",
@@ -704,7 +760,7 @@
"from": {
"kind": "ImageStreamTag",
"namespace": "${IMAGE_STREAM_NAMESPACE}",
- "name": "jboss-amq-62:1.6"
+ "name": "jboss-amq-62:1.7"
}
}
},
@@ -823,7 +879,7 @@
},
{
"name": "AMQ_MESH_SERVICE_NAME",
- "value": "${APPLICATION_NAME}-amq-tcp"
+ "value": "${APPLICATION_NAME}-amq-mesh"
},
{
"name": "AMQ_MESH_SERVICE_NAMESPACE",
diff --git a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap64-amq-s2i.json b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap64-amq-s2i.json
index 6b0e1a30c..52824aa0f 100644
--- a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap64-amq-s2i.json
+++ b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap64-amq-s2i.json
@@ -5,7 +5,7 @@
"annotations": {
"iconClass": "icon-eap",
"tags": "eap,javaee,java,jboss,hidden",
- "version": "1.4.7",
+ "version": "1.4.8",
"openshift.io/display-name": "JBoss EAP 6.4 + A-MQ (Ephemeral with https)",
"openshift.io/provider-display-name": "Red Hat, Inc.",
"description": "An example EAP 6 A-MQ application. For more information about using this template, see https://github.com/jboss-openshift/application-templates.",
@@ -17,9 +17,9 @@
},
"labels": {
"template": "eap64-amq-s2i",
- "xpaas": "1.4.7"
+ "xpaas": "1.4.8"
},
- "message": "A new EAP 6 and A-MQ based application with SSL support has been created in your project. The username/password for accessing the A-MQ service is ${MQ_USERNAME}/${MQ_PASSWORD}. Please be sure to create the \"${SERVICE_ACCOUNT_NAME}\" service account and the following secrets: \"${HTTPS_SECRET}\" containing the ${HTTPS_KEYSTORE} file used for serving secure content; \"${JGROUPS_ENCRYPT_SECRET}\" containing the ${JGROUPS_ENCRYPT_KEYSTORE} file used for securing JGroups communications.",
+ "message": "A new EAP 6 and A-MQ based application with SSL support has been created in your project. The username/password for accessing the A-MQ service is ${MQ_USERNAME}/${MQ_PASSWORD}. Please be sure to create the following secrets: \"${HTTPS_SECRET}\" containing the ${HTTPS_KEYSTORE} file used for serving secure content; \"${JGROUPS_ENCRYPT_SECRET}\" containing the ${JGROUPS_ENCRYPT_KEYSTORE} file used for securing JGroups communications.",
"parameters": [
{
"displayName": "Application Name",
@@ -99,13 +99,6 @@
"required": false
},
{
- "displayName": "Service Account Name",
- "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
- },
- {
"displayName": "Server Keystore Secret Name",
"description": "The name of the secret containing the keystore file",
"name": "HTTPS_SECRET",
@@ -160,7 +153,7 @@
"displayName": "A-MQ Mesh Discovery Type",
"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",
+ "value": "dns",
"required": false
},
{
@@ -248,6 +241,12 @@
"name": "ARTIFACT_DIR",
"value": "",
"required": false
+ },
+ {
+ "description": "Container memory limit",
+ "name": "MEMORY_LIMIT",
+ "value": "1Gi",
+ "required": false
}
],
"objects": [
@@ -305,6 +304,32 @@
"kind": "Service",
"apiVersion": "v1",
"spec": {
+ "clusterIP": "None",
+ "ports": [
+ {
+ "name": "ping",
+ "port": 8888
+ }
+ ],
+ "selector": {
+ "deploymentConfig": "${APPLICATION_NAME}"
+ }
+ },
+ "metadata": {
+ "name": "${APPLICATION_NAME}-ping",
+ "labels": {
+ "application": "${APPLICATION_NAME}"
+ },
+ "annotations": {
+ "service.alpha.kubernetes.io/tolerate-unready-endpoints": "true",
+ "description": "The JGroups ping port for clustering."
+ }
+ }
+ },
+ {
+ "kind": "Service",
+ "apiVersion": "v1",
+ "spec": {
"ports": [
{
"port": 61616,
@@ -326,6 +351,32 @@
}
},
{
+ "kind": "Service",
+ "apiVersion": "v1",
+ "spec": {
+ "clusterIP": "None",
+ "ports": [
+ {
+ "name": "mesh",
+ "port": 61616
+ }
+ ],
+ "selector": {
+ "deploymentConfig": "${APPLICATION_NAME}-amq"
+ }
+ },
+ "metadata": {
+ "name": "${APPLICATION_NAME}-amq-mesh",
+ "labels": {
+ "application": "${APPLICATION_NAME}"
+ },
+ "annotations": {
+ "service.alpha.kubernetes.io/tolerate-unready-endpoints": "true",
+ "description": "Supports node discovery for mesh formation."
+ }
+ }
+ },
+ {
"kind": "Route",
"apiVersion": "v1",
"id": "${APPLICATION_NAME}-http",
@@ -413,7 +464,7 @@
"from": {
"kind": "ImageStreamTag",
"namespace": "${IMAGE_STREAM_NAMESPACE}",
- "name": "jboss-eap64-openshift:1.6"
+ "name": "jboss-eap64-openshift:1.7"
}
}
},
@@ -490,13 +541,17 @@
}
},
"spec": {
- "serviceAccountName": "${SERVICE_ACCOUNT_NAME}",
"terminationGracePeriodSeconds": 60,
"containers": [
{
"name": "${APPLICATION_NAME}",
"image": "${APPLICATION_NAME}",
"imagePullPolicy": "Always",
+ "resources": {
+ "limits": {
+ "memory": "${MEMORY_LIMIT}"
+ }
+ },
"volumeMounts": [
{
"name": "eap-keystore-volume",
@@ -516,7 +571,8 @@
"-c",
"/opt/eap/bin/livenessProbe.sh"
]
- }
+ },
+ "initialDelaySeconds": 60
},
"readinessProbe": {
"exec": {
@@ -583,16 +639,16 @@
"value": "${MQ_SERIALIZABLE_PACKAGES}"
},
{
- "name": "OPENSHIFT_KUBE_PING_LABELS",
- "value": "application=${APPLICATION_NAME}"
+ "name": "JGROUPS_PING_PROTOCOL",
+ "value": "openshift.DNS_PING"
},
{
- "name": "OPENSHIFT_KUBE_PING_NAMESPACE",
- "valueFrom": {
- "fieldRef": {
- "fieldPath": "metadata.namespace"
- }
- }
+ "name": "OPENSHIFT_DNS_PING_SERVICE_NAME",
+ "value": "${APPLICATION_NAME}-ping"
+ },
+ {
+ "name": "OPENSHIFT_DNS_PING_SERVICE_PORT",
+ "value": "8888"
},
{
"name": "HTTPS_KEYSTORE_DIR",
@@ -687,7 +743,7 @@
"from": {
"kind": "ImageStreamTag",
"namespace": "${IMAGE_STREAM_NAMESPACE}",
- "name": "jboss-amq-62:1.6"
+ "name": "jboss-amq-62:1.7"
}
}
},
@@ -796,7 +852,7 @@
},
{
"name": "AMQ_MESH_SERVICE_NAME",
- "value": "${APPLICATION_NAME}-amq-tcp"
+ "value": "${APPLICATION_NAME}-amq-mesh"
},
{
"name": "AMQ_MESH_SERVICE_NAMESPACE",
diff --git a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap64-basic-s2i.json b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap64-basic-s2i.json
index 17fdd2333..ced21226f 100644
--- a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap64-basic-s2i.json
+++ b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap64-basic-s2i.json
@@ -5,7 +5,7 @@
"annotations": {
"iconClass": "icon-eap",
"tags": "eap,javaee,java,jboss",
- "version": "1.4.7",
+ "version": "1.4.8",
"openshift.io/display-name": "JBoss EAP 6.4 (no https)",
"openshift.io/provider-display-name": "Red Hat, Inc.",
"description": "An example EAP 6 application. For more information about using this template, see https://github.com/jboss-openshift/application-templates.",
@@ -17,7 +17,7 @@
},
"labels": {
"template": "eap64-basic-s2i",
- "xpaas": "1.4.7"
+ "xpaas": "1.4.8"
},
"message": "A new EAP 6 based application has been created in your project.",
"parameters": [
@@ -128,6 +128,12 @@
"name": "ARTIFACT_DIR",
"value": "",
"required": false
+ },
+ {
+ "description": "Container memory limit",
+ "name": "MEMORY_LIMIT",
+ "value": "1Gi",
+ "required": false
}
],
"objects": [
@@ -156,6 +162,32 @@
}
},
{
+ "kind": "Service",
+ "apiVersion": "v1",
+ "spec": {
+ "clusterIP": "None",
+ "ports": [
+ {
+ "name": "ping",
+ "port": 8888
+ }
+ ],
+ "selector": {
+ "deploymentConfig": "${APPLICATION_NAME}"
+ }
+ },
+ "metadata": {
+ "name": "${APPLICATION_NAME}-ping",
+ "labels": {
+ "application": "${APPLICATION_NAME}"
+ },
+ "annotations": {
+ "service.alpha.kubernetes.io/tolerate-unready-endpoints": "true",
+ "description": "The JGroups ping port for clustering."
+ }
+ }
+ },
+ {
"kind": "Route",
"apiVersion": "v1",
"id": "${APPLICATION_NAME}-http",
@@ -220,7 +252,7 @@
"from": {
"kind": "ImageStreamTag",
"namespace": "${IMAGE_STREAM_NAMESPACE}",
- "name": "jboss-eap64-openshift:1.6"
+ "name": "jboss-eap64-openshift:1.7"
}
}
},
@@ -303,6 +335,11 @@
"name": "${APPLICATION_NAME}",
"image": "${APPLICATION_NAME}",
"imagePullPolicy": "Always",
+ "resources": {
+ "limits": {
+ "memory": "${MEMORY_LIMIT}"
+ }
+ },
"livenessProbe": {
"exec": {
"command": [
@@ -310,7 +347,8 @@
"-c",
"/opt/eap/bin/livenessProbe.sh"
]
- }
+ },
+ "initialDelaySeconds": 60
},
"readinessProbe": {
"exec": {
@@ -340,16 +378,16 @@
],
"env": [
{
- "name": "OPENSHIFT_KUBE_PING_LABELS",
- "value": "application=${APPLICATION_NAME}"
+ "name": "JGROUPS_PING_PROTOCOL",
+ "value": "openshift.DNS_PING"
+ },
+ {
+ "name": "OPENSHIFT_DNS_PING_SERVICE_NAME",
+ "value": "${APPLICATION_NAME}-ping"
},
{
- "name": "OPENSHIFT_KUBE_PING_NAMESPACE",
- "valueFrom": {
- "fieldRef": {
- "fieldPath": "metadata.namespace"
- }
- }
+ "name": "OPENSHIFT_DNS_PING_SERVICE_PORT",
+ "value": "8888"
},
{
"name": "HORNETQ_CLUSTER_PASSWORD",
diff --git a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap64-https-s2i.json b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap64-https-s2i.json
index 8616ac04f..1702f493c 100644
--- a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap64-https-s2i.json
+++ b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap64-https-s2i.json
@@ -5,7 +5,7 @@
"annotations": {
"iconClass": "icon-eap",
"tags": "eap,javaee,java,jboss,hidden",
- "version": "1.4.7",
+ "version": "1.4.8",
"openshift.io/display-name": "JBoss EAP 6.4 (with https)",
"openshift.io/provider-display-name": "Red Hat, Inc.",
"description": "An example EAP 6 application. For more information about using this template, see https://github.com/jboss-openshift/application-templates.",
@@ -17,9 +17,9 @@
},
"labels": {
"template": "eap64-https-s2i",
- "xpaas": "1.4.7"
+ "xpaas": "1.4.8"
},
- "message": "A new EAP 6 based application with SSL support has been created in your project. Please be sure to create the \"${SERVICE_ACCOUNT_NAME}\" service account and the following secrets: \"${HTTPS_SECRET}\" containing the ${HTTPS_KEYSTORE} file used for serving secure content; \"${JGROUPS_ENCRYPT_SECRET}\" containing the ${JGROUPS_ENCRYPT_KEYSTORE} file used for securing JGroups communications.",
+ "message": "A new EAP 6 based application with SSL support has been created in your project. Please be sure to create the following secrets: \"${HTTPS_SECRET}\" containing the ${HTTPS_KEYSTORE} file used for serving secure content; \"${JGROUPS_ENCRYPT_SECRET}\" containing the ${JGROUPS_ENCRYPT_KEYSTORE} file used for securing JGroups communications.",
"parameters": [
{
"displayName": "Application Name",
@@ -78,13 +78,6 @@
"required": false
},
{
- "displayName": "Service Account Name",
- "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
- },
- {
"displayName": "Server Keystore Secret Name",
"description": "The name of the secret containing the keystore file",
"name": "HTTPS_SECRET",
@@ -205,6 +198,12 @@
"name": "ARTIFACT_DIR",
"value": "",
"required": false
+ },
+ {
+ "description": "Container memory limit",
+ "name": "MEMORY_LIMIT",
+ "value": "1Gi",
+ "required": false
}
],
"objects": [
@@ -257,6 +256,32 @@
}
},
{
+ "kind": "Service",
+ "apiVersion": "v1",
+ "spec": {
+ "clusterIP": "None",
+ "ports": [
+ {
+ "name": "ping",
+ "port": 8888
+ }
+ ],
+ "selector": {
+ "deploymentConfig": "${APPLICATION_NAME}"
+ }
+ },
+ "metadata": {
+ "name": "${APPLICATION_NAME}-ping",
+ "labels": {
+ "application": "${APPLICATION_NAME}"
+ },
+ "annotations": {
+ "service.alpha.kubernetes.io/tolerate-unready-endpoints": "true",
+ "description": "The JGroups ping port for clustering."
+ }
+ }
+ },
+ {
"kind": "Route",
"apiVersion": "v1",
"id": "${APPLICATION_NAME}-http",
@@ -344,7 +369,7 @@
"from": {
"kind": "ImageStreamTag",
"namespace": "${IMAGE_STREAM_NAMESPACE}",
- "name": "jboss-eap64-openshift:1.6"
+ "name": "jboss-eap64-openshift:1.7"
}
}
},
@@ -421,13 +446,17 @@
}
},
"spec": {
- "serviceAccountName": "${SERVICE_ACCOUNT_NAME}",
"terminationGracePeriodSeconds": 60,
"containers": [
{
"name": "${APPLICATION_NAME}",
"image": "${APPLICATION_NAME}",
"imagePullPolicy": "Always",
+ "resources": {
+ "limits": {
+ "memory": "${MEMORY_LIMIT}"
+ }
+ },
"volumeMounts": [
{
"name": "eap-keystore-volume",
@@ -447,7 +476,8 @@
"-c",
"/opt/eap/bin/livenessProbe.sh"
]
- }
+ },
+ "initialDelaySeconds": 60
},
"readinessProbe": {
"exec": {
@@ -482,16 +512,16 @@
],
"env": [
{
- "name": "OPENSHIFT_KUBE_PING_LABELS",
- "value": "application=${APPLICATION_NAME}"
+ "name": "JGROUPS_PING_PROTOCOL",
+ "value": "openshift.DNS_PING"
+ },
+ {
+ "name": "OPENSHIFT_DNS_PING_SERVICE_NAME",
+ "value": "${APPLICATION_NAME}-ping"
},
{
- "name": "OPENSHIFT_KUBE_PING_NAMESPACE",
- "valueFrom": {
- "fieldRef": {
- "fieldPath": "metadata.namespace"
- }
- }
+ "name": "OPENSHIFT_DNS_PING_SERVICE_PORT",
+ "value": "8888"
},
{
"name": "HTTPS_KEYSTORE_DIR",
diff --git a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap64-mongodb-persistent-s2i.json b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap64-mongodb-persistent-s2i.json
index ea3b46d78..a56fe4ed2 100644
--- a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap64-mongodb-persistent-s2i.json
+++ b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap64-mongodb-persistent-s2i.json
@@ -5,7 +5,7 @@
"annotations": {
"iconClass": "icon-eap",
"tags": "eap,javaee,java,jboss,hidden",
- "version": "1.4.7",
+ "version": "1.4.8",
"openshift.io/display-name": "JBoss EAP 6.4 + MongoDB (with https)",
"openshift.io/provider-display-name": "Red Hat, Inc.",
"description": "An example EAP 6 application with a MongoDB database. For more information about using this template, see https://github.com/jboss-openshift/application-templates.",
@@ -17,9 +17,9 @@
},
"labels": {
"template": "eap64-mongodb-persistent-s2i",
- "xpaas": "1.4.7"
+ "xpaas": "1.4.8"
},
- "message": "A new EAP 6 and MongoDB persistent based application with SSL support has been created in your project. The username/password for accessing the MongoDB database \"${DB_DATABASE}\" is ${DB_USERNAME}/${DB_PASSWORD} (Admin password is \"${DB_ADMIN_PASSWORD}\"). Please be sure to create the \"${SERVICE_ACCOUNT_NAME}\" service account and the following secrets: \"${HTTPS_SECRET}\" containing the ${HTTPS_KEYSTORE} file used for serving secure content; \"${JGROUPS_ENCRYPT_SECRET}\" containing the ${JGROUPS_ENCRYPT_KEYSTORE} file used for securing JGroups communications.",
+ "message": "A new EAP 6 and MongoDB persistent based application with SSL support has been created in your project. The username/password for accessing the MongoDB database \"${DB_DATABASE}\" is ${DB_USERNAME}/${DB_PASSWORD} (Admin password is \"${DB_ADMIN_PASSWORD}\"). Please be sure to create the following secrets: \"${HTTPS_SECRET}\" containing the ${HTTPS_KEYSTORE} file used for serving secure content; \"${JGROUPS_ENCRYPT_SECRET}\" containing the ${JGROUPS_ENCRYPT_KEYSTORE} file used for securing JGroups communications.",
"parameters": [
{
"displayName": "Application Name",
@@ -81,7 +81,7 @@
"displayName": "Database Volume Capacity",
"description": "Size of persistent storage for database volume.",
"name": "VOLUME_CAPACITY",
- "value": "512Mi",
+ "value": "1Gi",
"required": true
},
{
@@ -99,13 +99,6 @@
"required": false
},
{
- "displayName": "Service Account Name",
- "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
- },
- {
"displayName": "Server Keystore Secret Name",
"description": "The name of the secret containing the keystore file",
"name": "HTTPS_SECRET",
@@ -293,6 +286,12 @@
"name": "MONGODB_IMAGE_STREAM_TAG",
"value": "3.2",
"required": true
+ },
+ {
+ "description": "Container memory limit",
+ "name": "MEMORY_LIMIT",
+ "value": "1Gi",
+ "required": false
}
],
"objects": [
@@ -371,6 +370,32 @@
}
},
{
+ "kind": "Service",
+ "apiVersion": "v1",
+ "spec": {
+ "clusterIP": "None",
+ "ports": [
+ {
+ "name": "ping",
+ "port": 8888
+ }
+ ],
+ "selector": {
+ "deploymentConfig": "${APPLICATION_NAME}"
+ }
+ },
+ "metadata": {
+ "name": "${APPLICATION_NAME}-ping",
+ "labels": {
+ "application": "${APPLICATION_NAME}"
+ },
+ "annotations": {
+ "service.alpha.kubernetes.io/tolerate-unready-endpoints": "true",
+ "description": "The JGroups ping port for clustering."
+ }
+ }
+ },
+ {
"kind": "Route",
"apiVersion": "v1",
"id": "${APPLICATION_NAME}-http",
@@ -458,7 +483,7 @@
"from": {
"kind": "ImageStreamTag",
"namespace": "${IMAGE_STREAM_NAMESPACE}",
- "name": "jboss-eap64-openshift:1.6"
+ "name": "jboss-eap64-openshift:1.7"
}
}
},
@@ -535,13 +560,17 @@
}
},
"spec": {
- "serviceAccountName": "${SERVICE_ACCOUNT_NAME}",
"terminationGracePeriodSeconds": 60,
"containers": [
{
"name": "${APPLICATION_NAME}",
"image": "${APPLICATION_NAME}",
"imagePullPolicy": "Always",
+ "resources": {
+ "limits": {
+ "memory": "${MEMORY_LIMIT}"
+ }
+ },
"volumeMounts": [
{
"name": "eap-keystore-volume",
@@ -561,7 +590,8 @@
"-c",
"/opt/eap/bin/livenessProbe.sh"
]
- }
+ },
+ "initialDelaySeconds": 60
},
"readinessProbe": {
"exec": {
@@ -632,16 +662,16 @@
"value": "${DB_TX_ISOLATION}"
},
{
- "name": "OPENSHIFT_KUBE_PING_LABELS",
- "value": "application=${APPLICATION_NAME}"
+ "name": "JGROUPS_PING_PROTOCOL",
+ "value": "openshift.DNS_PING"
+ },
+ {
+ "name": "OPENSHIFT_DNS_PING_SERVICE_NAME",
+ "value": "${APPLICATION_NAME}-ping"
},
{
- "name": "OPENSHIFT_KUBE_PING_NAMESPACE",
- "valueFrom": {
- "fieldRef": {
- "fieldPath": "metadata.namespace"
- }
- }
+ "name": "OPENSHIFT_DNS_PING_SERVICE_PORT",
+ "value": "8888"
},
{
"name": "HTTPS_KEYSTORE_DIR",
diff --git a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap64-mongodb-s2i.json b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap64-mongodb-s2i.json
index 4aa9be281..cb92bac64 100644
--- a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap64-mongodb-s2i.json
+++ b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap64-mongodb-s2i.json
@@ -5,7 +5,7 @@
"annotations": {
"iconClass": "icon-eap",
"tags": "eap,javaee,java,jboss,hidden",
- "version": "1.4.7",
+ "version": "1.4.8",
"openshift.io/display-name": "JBoss EAP 6.4 + MongoDB (Ephemeral with https)",
"openshift.io/provider-display-name": "Red Hat, Inc.",
"description": "An example EAP 6 application with a MongoDB database. For more information about using this template, see https://github.com/jboss-openshift/application-templates.",
@@ -17,9 +17,9 @@
},
"labels": {
"template": "eap64-mongodb-s2i",
- "xpaas": "1.4.7"
+ "xpaas": "1.4.8"
},
- "message": "A new EAP 6 and MongoDB based application with SSL support has been created in your project. The username/password for accessing the MongoDB database \"${DB_DATABASE}\" is ${DB_USERNAME}/${DB_PASSWORD} (Admin password is \"${DB_ADMIN_PASSWORD}\"). Please be sure to create the \"${SERVICE_ACCOUNT_NAME}\" service account and the following secrets: \"${HTTPS_SECRET}\" containing the ${HTTPS_KEYSTORE} file used for serving secure content; \"${JGROUPS_ENCRYPT_SECRET}\" containing the ${JGROUPS_ENCRYPT_KEYSTORE} file used for securing JGroups communications.",
+ "message": "A new EAP 6 and MongoDB based application with SSL support has been created in your project. The username/password for accessing the MongoDB database \"${DB_DATABASE}\" is ${DB_USERNAME}/${DB_PASSWORD} (Admin password is \"${DB_ADMIN_PASSWORD}\"). Please be sure to create the following secrets: \"${HTTPS_SECRET}\" containing the ${HTTPS_KEYSTORE} file used for serving secure content; \"${JGROUPS_ENCRYPT_SECRET}\" containing the ${JGROUPS_ENCRYPT_KEYSTORE} file used for securing JGroups communications.",
"parameters": [
{
"displayName": "Application Name",
@@ -92,13 +92,6 @@
"required": false
},
{
- "displayName": "Service Account Name",
- "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
- },
- {
"displayName": "Server Keystore Secret Name",
"description": "The name of the secret containing the keystore file",
"name": "HTTPS_SECRET",
@@ -286,6 +279,12 @@
"name": "MONGODB_IMAGE_STREAM_TAG",
"value": "3.2",
"required": true
+ },
+ {
+ "description": "Container memory limit",
+ "name": "MEMORY_LIMIT",
+ "value": "1Gi",
+ "required": false
}
],
"objects": [
@@ -364,6 +363,32 @@
}
},
{
+ "kind": "Service",
+ "apiVersion": "v1",
+ "spec": {
+ "clusterIP": "None",
+ "ports": [
+ {
+ "name": "ping",
+ "port": 8888
+ }
+ ],
+ "selector": {
+ "deploymentConfig": "${APPLICATION_NAME}"
+ }
+ },
+ "metadata": {
+ "name": "${APPLICATION_NAME}-ping",
+ "labels": {
+ "application": "${APPLICATION_NAME}"
+ },
+ "annotations": {
+ "service.alpha.kubernetes.io/tolerate-unready-endpoints": "true",
+ "description": "The JGroups ping port for clustering."
+ }
+ }
+ },
+ {
"kind": "Route",
"apiVersion": "v1",
"id": "${APPLICATION_NAME}-http",
@@ -451,7 +476,7 @@
"from": {
"kind": "ImageStreamTag",
"namespace": "${IMAGE_STREAM_NAMESPACE}",
- "name": "jboss-eap64-openshift:1.6"
+ "name": "jboss-eap64-openshift:1.7"
}
}
},
@@ -528,13 +553,17 @@
}
},
"spec": {
- "serviceAccountName": "${SERVICE_ACCOUNT_NAME}",
"terminationGracePeriodSeconds": 60,
"containers": [
{
"name": "${APPLICATION_NAME}",
"image": "${APPLICATION_NAME}",
"imagePullPolicy": "Always",
+ "resources": {
+ "limits": {
+ "memory": "${MEMORY_LIMIT}"
+ }
+ },
"volumeMounts": [
{
"name": "eap-keystore-volume",
@@ -554,7 +583,8 @@
"-c",
"/opt/eap/bin/livenessProbe.sh"
]
- }
+ },
+ "initialDelaySeconds": 60
},
"readinessProbe": {
"exec": {
@@ -625,16 +655,16 @@
"value": "${DB_TX_ISOLATION}"
},
{
- "name": "OPENSHIFT_KUBE_PING_LABELS",
- "value": "application=${APPLICATION_NAME}"
+ "name": "JGROUPS_PING_PROTOCOL",
+ "value": "openshift.DNS_PING"
+ },
+ {
+ "name": "OPENSHIFT_DNS_PING_SERVICE_NAME",
+ "value": "${APPLICATION_NAME}-ping"
},
{
- "name": "OPENSHIFT_KUBE_PING_NAMESPACE",
- "valueFrom": {
- "fieldRef": {
- "fieldPath": "metadata.namespace"
- }
- }
+ "name": "OPENSHIFT_DNS_PING_SERVICE_PORT",
+ "value": "8888"
},
{
"name": "HTTPS_KEYSTORE_DIR",
@@ -803,8 +833,22 @@
"name": "MONGODB_QUIET",
"value": "${MONGODB_QUIET}"
}
+ ],
+ "volumeMounts": [
+ {
+ "mountPath": "/var/lib/mongodb/data",
+ "name": "${APPLICATION_NAME}-data"
+ }
]
}
+ ],
+ "volumes": [
+ {
+ "emptyDir": {
+ "medium": ""
+ },
+ "name": "${APPLICATION_NAME}-data"
+ }
]
}
}
diff --git a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap64-mysql-persistent-s2i.json b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap64-mysql-persistent-s2i.json
index 304f11348..a6dd17d09 100644
--- a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap64-mysql-persistent-s2i.json
+++ b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap64-mysql-persistent-s2i.json
@@ -5,7 +5,7 @@
"annotations": {
"iconClass": "icon-eap",
"tags": "eap,javaee,java,jboss",
- "version": "1.4.7",
+ "version": "1.4.8",
"openshift.io/display-name": "JBoss EAP 6.4 + MySQL (with https)",
"openshift.io/provider-display-name": "Red Hat, Inc.",
"description": "An example EAP 6 application with a MySQL database. For more information about using this template, see https://github.com/jboss-openshift/application-templates.",
@@ -17,9 +17,9 @@
},
"labels": {
"template": "eap64-mysql-persistent-s2i",
- "xpaas": "1.4.7"
+ "xpaas": "1.4.8"
},
- "message": "A new EAP 6 and MySQL persistent based application with SSL support has been created in your project. The username/password for accessing the MySQL database \"${DB_DATABASE}\" is ${DB_USERNAME}/${DB_PASSWORD}. Please be sure to create the \"${SERVICE_ACCOUNT_NAME}\" service account and the following secrets: \"${HTTPS_SECRET}\" containing the ${HTTPS_KEYSTORE} file used for serving secure content; \"${JGROUPS_ENCRYPT_SECRET}\" containing the ${JGROUPS_ENCRYPT_KEYSTORE} file used for securing JGroups communications.",
+ "message": "A new EAP 6 and MySQL persistent based application with SSL support has been created in your project. The username/password for accessing the MySQL database \"${DB_DATABASE}\" is ${DB_USERNAME}/${DB_PASSWORD}. Please be sure to create the following secrets: \"${HTTPS_SECRET}\" containing the ${HTTPS_KEYSTORE} file used for serving secure content; \"${JGROUPS_ENCRYPT_SECRET}\" containing the ${JGROUPS_ENCRYPT_KEYSTORE} file used for securing JGroups communications.",
"parameters": [
{
"displayName": "Application Name",
@@ -81,7 +81,7 @@
"displayName": "Database Volume Capacity",
"description": "Size of persistent storage for database volume.",
"name": "VOLUME_CAPACITY",
- "value": "512Mi",
+ "value": "1Gi",
"required": true
},
{
@@ -99,13 +99,6 @@
"required": false
},
{
- "displayName": "Service Account Name",
- "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
- },
- {
"displayName": "Server Keystore Secret Name",
"description": "The name of the secret containing the keystore file",
"name": "HTTPS_SECRET",
@@ -297,6 +290,12 @@
"name": "MYSQL_IMAGE_STREAM_TAG",
"value": "5.7",
"required": true
+ },
+ {
+ "description": "Container memory limit",
+ "name": "MEMORY_LIMIT",
+ "value": "1Gi",
+ "required": false
}
],
"objects": [
@@ -375,6 +374,32 @@
}
},
{
+ "kind": "Service",
+ "apiVersion": "v1",
+ "spec": {
+ "clusterIP": "None",
+ "ports": [
+ {
+ "name": "ping",
+ "port": 8888
+ }
+ ],
+ "selector": {
+ "deploymentConfig": "${APPLICATION_NAME}"
+ }
+ },
+ "metadata": {
+ "name": "${APPLICATION_NAME}-ping",
+ "labels": {
+ "application": "${APPLICATION_NAME}"
+ },
+ "annotations": {
+ "service.alpha.kubernetes.io/tolerate-unready-endpoints": "true",
+ "description": "The JGroups ping port for clustering."
+ }
+ }
+ },
+ {
"kind": "Route",
"apiVersion": "v1",
"id": "${APPLICATION_NAME}-http",
@@ -462,7 +487,7 @@
"from": {
"kind": "ImageStreamTag",
"namespace": "${IMAGE_STREAM_NAMESPACE}",
- "name": "jboss-eap64-openshift:1.6"
+ "name": "jboss-eap64-openshift:1.7"
}
}
},
@@ -539,13 +564,17 @@
}
},
"spec": {
- "serviceAccountName": "${SERVICE_ACCOUNT_NAME}",
"terminationGracePeriodSeconds": 60,
"containers": [
{
"name": "${APPLICATION_NAME}",
"image": "${APPLICATION_NAME}",
"imagePullPolicy": "Always",
+ "resources": {
+ "limits": {
+ "memory": "${MEMORY_LIMIT}"
+ }
+ },
"volumeMounts": [
{
"name": "eap-keystore-volume",
@@ -565,7 +594,8 @@
"-c",
"/opt/eap/bin/livenessProbe.sh"
]
- }
+ },
+ "initialDelaySeconds": 60
},
"readinessProbe": {
"exec": {
@@ -636,16 +666,16 @@
"value": "${DB_TX_ISOLATION}"
},
{
- "name": "OPENSHIFT_KUBE_PING_LABELS",
- "value": "application=${APPLICATION_NAME}"
+ "name": "JGROUPS_PING_PROTOCOL",
+ "value": "openshift.DNS_PING"
+ },
+ {
+ "name": "OPENSHIFT_DNS_PING_SERVICE_NAME",
+ "value": "${APPLICATION_NAME}-ping"
},
{
- "name": "OPENSHIFT_KUBE_PING_NAMESPACE",
- "valueFrom": {
- "fieldRef": {
- "fieldPath": "metadata.namespace"
- }
- }
+ "name": "OPENSHIFT_DNS_PING_SERVICE_PORT",
+ "value": "8888"
},
{
"name": "HTTPS_KEYSTORE_DIR",
diff --git a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap64-mysql-s2i.json b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap64-mysql-s2i.json
index bc1cdaca5..936f5d607 100644
--- a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap64-mysql-s2i.json
+++ b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap64-mysql-s2i.json
@@ -5,7 +5,7 @@
"annotations": {
"iconClass": "icon-eap",
"tags": "eap,javaee,java,jboss,hidden",
- "version": "1.4.7",
+ "version": "1.4.8",
"openshift.io/display-name": "JBoss EAP 6.4 + MySQL (Ephemeral with https)",
"openshift.io/provider-display-name": "Red Hat, Inc.",
"description": "An example EAP 6 application with a MySQL database. For more information about using this template, see https://github.com/jboss-openshift/application-templates.",
@@ -17,9 +17,9 @@
},
"labels": {
"template": "eap64-mysql-s2i",
- "xpaas": "1.4.7"
+ "xpaas": "1.4.8"
},
- "message": "A new EAP 6 and MySQL based application with SSL support has been created in your project. The username/password for accessing the MySQL database \"${DB_DATABASE}\" is ${DB_USERNAME}/${DB_PASSWORD}. Please be sure to create the \"${SERVICE_ACCOUNT_NAME}\" service account and the following secrets: \"${HTTPS_SECRET}\" containing the ${HTTPS_KEYSTORE} file used for serving secure content; \"${JGROUPS_ENCRYPT_SECRET}\" containing the ${JGROUPS_ENCRYPT_KEYSTORE} file used for securing JGroups communications.",
+ "message": "A new EAP 6 and MySQL based application with SSL support has been created in your project. The username/password for accessing the MySQL database \"${DB_DATABASE}\" is ${DB_USERNAME}/${DB_PASSWORD}. Please be sure to create the following secrets: \"${HTTPS_SECRET}\" containing the ${HTTPS_KEYSTORE} file used for serving secure content; \"${JGROUPS_ENCRYPT_SECRET}\" containing the ${JGROUPS_ENCRYPT_KEYSTORE} file used for securing JGroups communications.",
"parameters": [
{
"displayName": "Application Name",
@@ -92,13 +92,6 @@
"required": false
},
{
- "displayName": "Service Account Name",
- "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
- },
- {
"displayName": "Server Keystore Secret Name",
"description": "The name of the secret containing the keystore file",
"name": "HTTPS_SECRET",
@@ -290,6 +283,12 @@
"name": "MYSQL_IMAGE_STREAM_TAG",
"value": "5.7",
"required": true
+ },
+ {
+ "description": "Container memory limit",
+ "name": "MEMORY_LIMIT",
+ "value": "1Gi",
+ "required": false
}
],
"objects": [
@@ -368,6 +367,32 @@
}
},
{
+ "kind": "Service",
+ "apiVersion": "v1",
+ "spec": {
+ "clusterIP": "None",
+ "ports": [
+ {
+ "name": "ping",
+ "port": 8888
+ }
+ ],
+ "selector": {
+ "deploymentConfig": "${APPLICATION_NAME}"
+ }
+ },
+ "metadata": {
+ "name": "${APPLICATION_NAME}-ping",
+ "labels": {
+ "application": "${APPLICATION_NAME}"
+ },
+ "annotations": {
+ "service.alpha.kubernetes.io/tolerate-unready-endpoints": "true",
+ "description": "The JGroups ping port for clustering."
+ }
+ }
+ },
+ {
"kind": "Route",
"apiVersion": "v1",
"id": "${APPLICATION_NAME}-http",
@@ -455,7 +480,7 @@
"from": {
"kind": "ImageStreamTag",
"namespace": "${IMAGE_STREAM_NAMESPACE}",
- "name": "jboss-eap64-openshift:1.6"
+ "name": "jboss-eap64-openshift:1.7"
}
}
},
@@ -532,13 +557,17 @@
}
},
"spec": {
- "serviceAccountName": "${SERVICE_ACCOUNT_NAME}",
"terminationGracePeriodSeconds": 60,
"containers": [
{
"name": "${APPLICATION_NAME}",
"image": "${APPLICATION_NAME}",
"imagePullPolicy": "Always",
+ "resources": {
+ "limits": {
+ "memory": "${MEMORY_LIMIT}"
+ }
+ },
"volumeMounts": [
{
"name": "eap-keystore-volume",
@@ -558,7 +587,8 @@
"-c",
"/opt/eap/bin/livenessProbe.sh"
]
- }
+ },
+ "initialDelaySeconds": 60
},
"readinessProbe": {
"exec": {
@@ -629,16 +659,16 @@
"value": "${DB_TX_ISOLATION}"
},
{
- "name": "OPENSHIFT_KUBE_PING_LABELS",
- "value": "application=${APPLICATION_NAME}"
+ "name": "JGROUPS_PING_PROTOCOL",
+ "value": "openshift.DNS_PING"
+ },
+ {
+ "name": "OPENSHIFT_DNS_PING_SERVICE_NAME",
+ "value": "${APPLICATION_NAME}-ping"
},
{
- "name": "OPENSHIFT_KUBE_PING_NAMESPACE",
- "valueFrom": {
- "fieldRef": {
- "fieldPath": "metadata.namespace"
- }
- }
+ "name": "OPENSHIFT_DNS_PING_SERVICE_PORT",
+ "value": "8888"
},
{
"name": "HTTPS_KEYSTORE_DIR",
@@ -815,8 +845,22 @@
"name": "MYSQL_AIO",
"value": "${MYSQL_AIO}"
}
+ ],
+ "volumeMounts": [
+ {
+ "mountPath": "/var/lib/mysql/data",
+ "name": "${APPLICATION_NAME}-data"
+ }
]
}
+ ],
+ "volumes": [
+ {
+ "emptyDir": {
+ "medium": ""
+ },
+ "name": "${APPLICATION_NAME}-data"
+ }
]
}
}
diff --git a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap64-postgresql-persistent-s2i.json b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap64-postgresql-persistent-s2i.json
index d2e6ea25b..53e9a38c8 100644
--- a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap64-postgresql-persistent-s2i.json
+++ b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap64-postgresql-persistent-s2i.json
@@ -5,7 +5,7 @@
"annotations": {
"iconClass": "icon-eap",
"tags": "eap,javaee,java,jboss",
- "version": "1.4.7",
+ "version": "1.4.8",
"openshift.io/display-name": "Red Hat JBoss EAP 6.4 + PostgreSQL (Persistent with https)",
"openshift.io/provider-display-name": "Red Hat, Inc.",
"description": "An example EAP 6 application with a PostgreSQL database. For more information about using this template, see https://github.com/jboss-openshift/application-templates.",
@@ -17,9 +17,9 @@
},
"labels": {
"template": "eap64-postgresql-persistent-s2i",
- "xpaas": "1.4.7"
+ "xpaas": "1.4.8"
},
- "message": "A new EAP 6 and PostgreSQL persistent based application with SSL support has been created in your project. The username/password for accessing the PostgreSQL database \"${DB_DATABASE}\" is ${DB_USERNAME}/${DB_PASSWORD}. Please be sure to create the \"${SERVICE_ACCOUNT_NAME}\" service account and the following secrets: \"${HTTPS_SECRET}\" containing the ${HTTPS_KEYSTORE} file used for serving secure content; \"${JGROUPS_ENCRYPT_SECRET}\" containing the ${JGROUPS_ENCRYPT_KEYSTORE} file used for securing JGroups communications.",
+ "message": "A new EAP 6 and PostgreSQL persistent based application with SSL support has been created in your project. The username/password for accessing the PostgreSQL database \"${DB_DATABASE}\" is ${DB_USERNAME}/${DB_PASSWORD}. Please be sure to create the following secrets: \"${HTTPS_SECRET}\" containing the ${HTTPS_KEYSTORE} file used for serving secure content; \"${JGROUPS_ENCRYPT_SECRET}\" containing the ${JGROUPS_ENCRYPT_KEYSTORE} file used for securing JGroups communications.",
"parameters": [
{
"displayName": "Application Name",
@@ -81,7 +81,7 @@
"displayName": "Database Volume Capacity",
"description": "Size of persistent storage for database volume.",
"name": "VOLUME_CAPACITY",
- "value": "512Mi",
+ "value": "1Gi",
"required": true
},
{
@@ -99,13 +99,6 @@
"required": false
},
{
- "displayName": "Service Account Name",
- "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
- },
- {
"displayName": "Server Keystore Secret Name",
"description": "The name of the secret containing the keystore file",
"name": "HTTPS_SECRET",
@@ -279,6 +272,12 @@
"name": "POSTGRESQL_IMAGE_STREAM_TAG",
"value": "9.5",
"required": true
+ },
+ {
+ "description": "Container memory limit",
+ "name": "MEMORY_LIMIT",
+ "value": "1Gi",
+ "required": false
}
],
"objects": [
@@ -357,6 +356,32 @@
}
},
{
+ "kind": "Service",
+ "apiVersion": "v1",
+ "spec": {
+ "clusterIP": "None",
+ "ports": [
+ {
+ "name": "ping",
+ "port": 8888
+ }
+ ],
+ "selector": {
+ "deploymentConfig": "${APPLICATION_NAME}"
+ }
+ },
+ "metadata": {
+ "name": "${APPLICATION_NAME}-ping",
+ "labels": {
+ "application": "${APPLICATION_NAME}"
+ },
+ "annotations": {
+ "service.alpha.kubernetes.io/tolerate-unready-endpoints": "true",
+ "description": "The JGroups ping port for clustering."
+ }
+ }
+ },
+ {
"kind": "Route",
"apiVersion": "v1",
"id": "${APPLICATION_NAME}-http",
@@ -444,7 +469,7 @@
"from": {
"kind": "ImageStreamTag",
"namespace": "${IMAGE_STREAM_NAMESPACE}",
- "name": "jboss-eap64-openshift:1.6"
+ "name": "jboss-eap64-openshift:1.7"
}
}
},
@@ -521,13 +546,17 @@
}
},
"spec": {
- "serviceAccountName": "${SERVICE_ACCOUNT_NAME}",
"terminationGracePeriodSeconds": 60,
"containers": [
{
"name": "${APPLICATION_NAME}",
"image": "${APPLICATION_NAME}",
"imagePullPolicy": "Always",
+ "resources": {
+ "limits": {
+ "memory": "${MEMORY_LIMIT}"
+ }
+ },
"volumeMounts": [
{
"name": "eap-keystore-volume",
@@ -547,7 +576,8 @@
"-c",
"/opt/eap/bin/livenessProbe.sh"
]
- }
+ },
+ "initialDelaySeconds": 60
},
"readinessProbe": {
"exec": {
@@ -618,16 +648,16 @@
"value": "${DB_TX_ISOLATION}"
},
{
- "name": "OPENSHIFT_KUBE_PING_LABELS",
- "value": "application=${APPLICATION_NAME}"
+ "name": "JGROUPS_PING_PROTOCOL",
+ "value": "openshift.DNS_PING"
+ },
+ {
+ "name": "OPENSHIFT_DNS_PING_SERVICE_NAME",
+ "value": "${APPLICATION_NAME}-ping"
},
{
- "name": "OPENSHIFT_KUBE_PING_NAMESPACE",
- "valueFrom": {
- "fieldRef": {
- "fieldPath": "metadata.namespace"
- }
- }
+ "name": "OPENSHIFT_DNS_PING_SERVICE_PORT",
+ "value": "8888"
},
{
"name": "HTTPS_KEYSTORE_DIR",
diff --git a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap64-postgresql-s2i.json b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap64-postgresql-s2i.json
index 7a2d4009e..a13e68daf 100644
--- a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap64-postgresql-s2i.json
+++ b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap64-postgresql-s2i.json
@@ -5,7 +5,7 @@
"annotations": {
"iconClass": "icon-eap",
"tags": "eap,javaee,java,jboss,hidden",
- "version": "1.4.7",
+ "version": "1.4.8",
"openshift.io/display-name": "JBoss EAP 6.4 + PostgreSQL (Ephemeral with https)",
"openshift.io/provider-display-name": "Red Hat, Inc.",
"description": "An example EAP 6 application with a PostgreSQL database. For more information about using this template, see https://github.com/jboss-openshift/application-templates.",
@@ -17,9 +17,9 @@
},
"labels": {
"template": "eap64-postgresql-s2i",
- "xpaas": "1.4.7"
+ "xpaas": "1.4.8"
},
- "message": "A new EAP 6 and PostgreSQL based application with SSL support has been created in your project. The username/password for accessing the PostgreSQL database \"${DB_DATABASE}\" is ${DB_USERNAME}/${DB_PASSWORD}. Please be sure to create the \"${SERVICE_ACCOUNT_NAME}\" service account and the following secrets: \"${HTTPS_SECRET}\" containing the ${HTTPS_KEYSTORE} file used for serving secure content; \"${JGROUPS_ENCRYPT_SECRET}\" containing the ${JGROUPS_ENCRYPT_KEYSTORE} file used for securing JGroups communications.",
+ "message": "A new EAP 6 and PostgreSQL based application with SSL support has been created in your project. The username/password for accessing the PostgreSQL database \"${DB_DATABASE}\" is ${DB_USERNAME}/${DB_PASSWORD}. Please be sure to create the following secrets: \"${HTTPS_SECRET}\" containing the ${HTTPS_KEYSTORE} file used for serving secure content; \"${JGROUPS_ENCRYPT_SECRET}\" containing the ${JGROUPS_ENCRYPT_KEYSTORE} file used for securing JGroups communications.",
"parameters": [
{
"displayName": "Application Name",
@@ -92,13 +92,6 @@
"required": false
},
{
- "displayName": "Service Account Name",
- "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
- },
- {
"displayName": "Server Keystore Secret Name",
"description": "The name of the secret containing the keystore file",
"name": "HTTPS_SECRET",
@@ -272,6 +265,12 @@
"name": "POSTGRESQL_IMAGE_STREAM_TAG",
"value": "9.5",
"required": true
+ },
+ {
+ "description": "Container memory limit",
+ "name": "MEMORY_LIMIT",
+ "value": "1Gi",
+ "required": false
}
],
"objects": [
@@ -350,6 +349,32 @@
}
},
{
+ "kind": "Service",
+ "apiVersion": "v1",
+ "spec": {
+ "clusterIP": "None",
+ "ports": [
+ {
+ "name": "ping",
+ "port": 8888
+ }
+ ],
+ "selector": {
+ "deploymentConfig": "${APPLICATION_NAME}"
+ }
+ },
+ "metadata": {
+ "name": "${APPLICATION_NAME}-ping",
+ "labels": {
+ "application": "${APPLICATION_NAME}"
+ },
+ "annotations": {
+ "service.alpha.kubernetes.io/tolerate-unready-endpoints": "true",
+ "description": "The JGroups ping port for clustering."
+ }
+ }
+ },
+ {
"kind": "Route",
"apiVersion": "v1",
"id": "${APPLICATION_NAME}-http",
@@ -437,7 +462,7 @@
"from": {
"kind": "ImageStreamTag",
"namespace": "${IMAGE_STREAM_NAMESPACE}",
- "name": "jboss-eap64-openshift:1.6"
+ "name": "jboss-eap64-openshift:1.7"
}
}
},
@@ -514,13 +539,17 @@
}
},
"spec": {
- "serviceAccountName": "${SERVICE_ACCOUNT_NAME}",
"terminationGracePeriodSeconds": 60,
"containers": [
{
"name": "${APPLICATION_NAME}",
"image": "${APPLICATION_NAME}",
"imagePullPolicy": "Always",
+ "resources": {
+ "limits": {
+ "memory": "${MEMORY_LIMIT}"
+ }
+ },
"volumeMounts": [
{
"name": "eap-keystore-volume",
@@ -540,7 +569,8 @@
"-c",
"/opt/eap/bin/livenessProbe.sh"
]
- }
+ },
+ "initialDelaySeconds": 60
},
"readinessProbe": {
"exec": {
@@ -611,16 +641,16 @@
"value": "${DB_TX_ISOLATION}"
},
{
- "name": "OPENSHIFT_KUBE_PING_LABELS",
- "value": "application=${APPLICATION_NAME}"
+ "name": "JGROUPS_PING_PROTOCOL",
+ "value": "openshift.DNS_PING"
+ },
+ {
+ "name": "OPENSHIFT_DNS_PING_SERVICE_NAME",
+ "value": "${APPLICATION_NAME}-ping"
},
{
- "name": "OPENSHIFT_KUBE_PING_NAMESPACE",
- "valueFrom": {
- "fieldRef": {
- "fieldPath": "metadata.namespace"
- }
- }
+ "name": "OPENSHIFT_DNS_PING_SERVICE_PORT",
+ "value": "8888"
},
{
"name": "HTTPS_KEYSTORE_DIR",
@@ -789,8 +819,22 @@
"name": "POSTGRESQL_SHARED_BUFFERS",
"value": "${POSTGRESQL_SHARED_BUFFERS}"
}
+ ],
+ "volumeMounts": [
+ {
+ "mountPath": "/var/lib/pgsql/data",
+ "name": "${APPLICATION_NAME}-data"
+ }
]
}
+ ],
+ "volumes": [
+ {
+ "emptyDir": {
+ "medium": ""
+ },
+ "name": "${APPLICATION_NAME}-data"
+ }
]
}
}
diff --git a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap64-sso-s2i.json b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap64-sso-s2i.json
index 368f147f4..2c5e16f40 100644
--- a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap64-sso-s2i.json
+++ b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap64-sso-s2i.json
@@ -5,7 +5,7 @@
"annotations": {
"iconClass": "icon-eap",
"tags": "eap,javaee,java,jboss,hidden",
- "version": "1.4.7",
+ "version": "1.4.8",
"openshift.io/display-name": "JBoss EAP 6.4 + Single Sign-On (with https)",
"openshift.io/provider-display-name": "Red Hat, Inc.",
"description": "An example EAP 6 Single Sign-On application. For more information about using this template, see https://github.com/jboss-openshift/application-templates.",
@@ -17,9 +17,9 @@
},
"labels": {
"template": "eap64-sso-s2i",
- "xpaas": "1.4.7"
+ "xpaas": "1.4.8"
},
- "message": "A new EAP 6 based application with SSL and SSO support has been created in your project. Please be sure to create the \"${SERVICE_ACCOUNT_NAME}\" service account and the following secrets: \"${HTTPS_SECRET}\" containing the ${HTTPS_KEYSTORE} file used for serving secure content; \"${JGROUPS_ENCRYPT_SECRET}\" containing the ${JGROUPS_ENCRYPT_KEYSTORE} file used for securing JGroups communications.",
+ "message": "A new EAP 6 based application with SSL and SSO support has been created in your project. Please be sure to create the following secrets: \"${HTTPS_SECRET}\" containing the ${HTTPS_KEYSTORE} file used for serving secure content; \"${JGROUPS_ENCRYPT_SECRET}\" containing the ${JGROUPS_ENCRYPT_KEYSTORE} file used for securing JGroups communications.",
"parameters": [
{
"displayName": "Application Name",
@@ -78,13 +78,6 @@
"required": false
},
{
- "displayName": "Service Account Name",
- "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
- },
- {
"displayName": "Server Keystore Secret Name",
"description": "The name of the secret containing the keystore file",
"name": "HTTPS_SECRET",
@@ -333,6 +326,12 @@
"name": "MAVEN_MIRROR_URL",
"value": "",
"required": false
+ },
+ {
+ "description": "Container memory limit",
+ "name": "MEMORY_LIMIT",
+ "value": "1Gi",
+ "required": false
}
],
"objects": [
@@ -385,6 +384,32 @@
}
},
{
+ "kind": "Service",
+ "apiVersion": "v1",
+ "spec": {
+ "clusterIP": "None",
+ "ports": [
+ {
+ "name": "ping",
+ "port": 8888
+ }
+ ],
+ "selector": {
+ "deploymentConfig": "${APPLICATION_NAME}"
+ }
+ },
+ "metadata": {
+ "name": "${APPLICATION_NAME}-ping",
+ "labels": {
+ "application": "${APPLICATION_NAME}"
+ },
+ "annotations": {
+ "service.alpha.kubernetes.io/tolerate-unready-endpoints": "true",
+ "description": "The JGroups ping port for clustering."
+ }
+ }
+ },
+ {
"kind": "Route",
"apiVersion": "v1",
"id": "${APPLICATION_NAME}-http",
@@ -462,7 +487,7 @@
"from": {
"kind": "ImageStreamTag",
"namespace": "${IMAGE_STREAM_NAMESPACE}",
- "name": "jboss-eap64-openshift:1.6"
+ "name": "jboss-eap64-openshift:1.7"
},
"env": [
{
@@ -553,13 +578,17 @@
}
},
"spec": {
- "serviceAccountName": "${SERVICE_ACCOUNT_NAME}",
"terminationGracePeriodSeconds": 60,
"containers": [
{
"name": "${APPLICATION_NAME}",
"image": "${APPLICATION_NAME}",
"imagePullPolicy": "Always",
+ "resources": {
+ "limits": {
+ "memory": "${MEMORY_LIMIT}"
+ }
+ },
"volumeMounts": [
{
"name": "sso-saml-keystore-volume",
@@ -589,7 +618,8 @@
"-c",
"/opt/eap/bin/livenessProbe.sh"
]
- }
+ },
+ "initialDelaySeconds": 60
},
"readinessProbe": {
"exec": {
@@ -624,16 +654,16 @@
],
"env": [
{
- "name": "OPENSHIFT_KUBE_PING_LABELS",
- "value": "application=${APPLICATION_NAME}"
+ "name": "JGROUPS_PING_PROTOCOL",
+ "value": "openshift.DNS_PING"
+ },
+ {
+ "name": "OPENSHIFT_DNS_PING_SERVICE_NAME",
+ "value": "${APPLICATION_NAME}-ping"
},
{
- "name": "OPENSHIFT_KUBE_PING_NAMESPACE",
- "valueFrom": {
- "fieldRef": {
- "fieldPath": "metadata.namespace"
- }
- }
+ "name": "OPENSHIFT_DNS_PING_SERVICE_PORT",
+ "value": "8888"
},
{
"name": "HOSTNAME_HTTP",
diff --git a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap64-third-party-db-s2i.json b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap64-third-party-db-s2i.json
index 701f4eee6..75c2c466c 100644
--- a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap64-third-party-db-s2i.json
+++ b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap64-third-party-db-s2i.json
@@ -5,7 +5,7 @@
"annotations": {
"iconClass": "icon-eap",
"tags": "eap,javaee,java,jboss,hidden",
- "version": "1.4.7",
+ "version": "1.4.8",
"openshift.io/display-name": "Red Hat JBoss EAP 6.4 (with https, DB drivers)",
"openshift.io/provider-display-name": "Red Hat, Inc.",
"description": "An example EAP 6 DB application. For more information about using this template, see https://github.com/jboss-openshift/application-templates.",
@@ -17,9 +17,9 @@
},
"labels": {
"template": "eap64-third-party-db-s2i",
- "xpaas": "1.4.7"
+ "xpaas": "1.4.8"
},
- "message": "A new EAP 6 based application with SSL support has been created in your project. Please be sure to create the \"${SERVICE_ACCOUNT_NAME}\" service account and the following secrets:\"${CONFIGURATION_NAME}\" containing the datasource configuration details required by the deployed application(s); \"${HTTPS_SECRET}\" containing the ${HTTPS_KEYSTORE} file used for serving secure content; \"${JGROUPS_ENCRYPT_SECRET}\" containing the ${JGROUPS_ENCRYPT_KEYSTORE} file used for securing JGroups communications.",
+ "message": "A new EAP 6 based application with SSL support has been created in your project. Please be sure to create the following secrets:\"${CONFIGURATION_NAME}\" containing the datasource configuration details required by the deployed application(s); \"${HTTPS_SECRET}\" containing the ${HTTPS_KEYSTORE} file used for serving secure content; \"${JGROUPS_ENCRYPT_SECRET}\" containing the ${JGROUPS_ENCRYPT_KEYSTORE} file used for securing JGroups communications.",
"parameters": [
{
"displayName": "Application Name",
@@ -72,7 +72,7 @@
},
{
"displayName": "Drivers ImageStreamTag",
- "description": "ImageStreamTag definition for the image containing the drivers and configuration, e.g. jboss-datavirt63-openshift:1.0-driver",
+ "description": "ImageStreamTag definition for the image containing the drivers and configuration, e.g. jboss-datavirt63-driver-openshift:1.1",
"name": "EXTENSIONS_IMAGE",
"value": "jboss-datavirt63-driver-openshift:1.1",
"required": true
@@ -106,13 +106,6 @@
"required": false
},
{
- "displayName": "Service Account Name",
- "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
- },
- {
"displayName": "Server Keystore Secret Name",
"description": "The name of the secret containing the keystore file",
"name": "HTTPS_SECRET",
@@ -233,6 +226,12 @@
"name": "ARTIFACT_DIR",
"value": "",
"required": false
+ },
+ {
+ "description": "Container memory limit",
+ "name": "MEMORY_LIMIT",
+ "value": "1Gi",
+ "required": false
}
],
"objects": [
@@ -305,6 +304,32 @@
}
},
{
+ "kind": "Service",
+ "apiVersion": "v1",
+ "spec": {
+ "clusterIP": "None",
+ "ports": [
+ {
+ "name": "ping",
+ "port": 8888
+ }
+ ],
+ "selector": {
+ "deploymentConfig": "${APPLICATION_NAME}"
+ }
+ },
+ "metadata": {
+ "name": "${APPLICATION_NAME}-ping",
+ "labels": {
+ "application": "${APPLICATION_NAME}"
+ },
+ "annotations": {
+ "service.alpha.kubernetes.io/tolerate-unready-endpoints": "true",
+ "description": "The JGroups ping port for clustering."
+ }
+ }
+ },
+ {
"kind": "Route",
"apiVersion": "v1",
"id": "${APPLICATION_NAME}-https",
@@ -391,7 +416,7 @@
"from": {
"kind": "ImageStreamTag",
"namespace": "${IMAGE_STREAM_NAMESPACE}",
- "name": "jboss-eap64-openshift:1.6"
+ "name": "jboss-eap64-openshift:1.7"
}
}
},
@@ -478,13 +503,17 @@
}
},
"spec": {
- "serviceAccountName": "${SERVICE_ACCOUNT_NAME}",
"terminationGracePeriodSeconds": 60,
"containers": [
{
"name": "${APPLICATION_NAME}",
"image": "${APPLICATION_NAME}",
"imagePullPolicy": "Always",
+ "resources": {
+ "limits": {
+ "memory": "${MEMORY_LIMIT}"
+ }
+ },
"volumeMounts": [
{
"name": "configuration",
@@ -509,7 +538,8 @@
"-c",
"/opt/eap/bin/livenessProbe.sh"
]
- }
+ },
+ "initialDelaySeconds": 60
},
"readinessProbe": {
"exec": {
@@ -544,16 +574,16 @@
],
"env": [
{
- "name": "OPENSHIFT_KUBE_PING_LABELS",
- "value": "application=${APPLICATION_NAME}"
+ "name": "JGROUPS_PING_PROTOCOL",
+ "value": "openshift.DNS_PING"
+ },
+ {
+ "name": "OPENSHIFT_DNS_PING_SERVICE_NAME",
+ "value": "${APPLICATION_NAME}-ping"
},
{
- "name": "OPENSHIFT_KUBE_PING_NAMESPACE",
- "valueFrom": {
- "fieldRef": {
- "fieldPath": "metadata.namespace"
- }
- }
+ "name": "OPENSHIFT_DNS_PING_SERVICE_PORT",
+ "value": "8888"
},
{
"name": "ENV_FILES",
diff --git a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap64-tx-recovery-s2i.json b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap64-tx-recovery-s2i.json
new file mode 100644
index 000000000..de5ebe326
--- /dev/null
+++ b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap64-tx-recovery-s2i.json
@@ -0,0 +1,605 @@
+{
+ "kind": "Template",
+ "apiVersion": "v1",
+ "metadata": {
+ "annotations": {
+ "iconClass": "icon-eap",
+ "tags": "eap,javaee,java,jboss",
+ "version": "1.4.8",
+ "openshift.io/display-name": "JBoss EAP 6.4 (tx recovery)",
+ "openshift.io/provider-display-name": "Red Hat, Inc.",
+ "description": "An example EAP 6 application. For more information about using this template, see https://github.com/jboss-openshift/application-templates.",
+ "template.openshift.io/long-description": "This template defines resources needed to develop Red Hat Enterprise Application Server 6.4 based application, including a build configuration, application deployment configuration and insecure communication using http. The template also demonstrates how to enable automated transaction recovery on scale down of application pods. Automated transaction recovery is currently Technology Preview.",
+ "template.openshift.io/documentation-url": "https://access.redhat.com/documentation/en/red-hat-jboss-enterprise-application-platform/",
+ "template.openshift.io/support-url": "https://access.redhat.com"
+ },
+ "name": "eap64-tx-recovery-s2i"
+ },
+ "labels": {
+ "template": "eap64-tx-recovery-s2i",
+ "xpaas": "1.4.8"
+ },
+ "message": "A new EAP 6 based application has been created in your project.",
+ "parameters": [
+ {
+ "displayName": "Application Name",
+ "description": "The name for the application.",
+ "name": "APPLICATION_NAME",
+ "value": "eap-app",
+ "required": true
+ },
+ {
+ "displayName": "Custom http Route Hostname",
+ "description": "Custom hostname for http service route. Leave blank for default hostname, e.g.: <application-name>-<project>.<default-domain-suffix>",
+ "name": "HOSTNAME_HTTP",
+ "value": "",
+ "required": false
+ },
+ {
+ "displayName": "Git Repository URL",
+ "description": "Git source URI for application",
+ "name": "SOURCE_REPOSITORY_URL",
+ "value": "https://github.com/jboss-developer/jboss-eap-quickstarts",
+ "required": true
+ },
+ {
+ "displayName": "Git Reference",
+ "description": "Git branch/tag reference",
+ "name": "SOURCE_REPOSITORY_REF",
+ "value": "6.4.x",
+ "required": false
+ },
+ {
+ "displayName": "Context Directory",
+ "description": "Path within Git project to build; empty for root project directory.",
+ "name": "CONTEXT_DIR",
+ "value": "kitchensink",
+ "required": false
+ },
+ {
+ "displayName": "Queues",
+ "description": "Queue names",
+ "name": "HORNETQ_QUEUES",
+ "value": "",
+ "required": false
+ },
+ {
+ "displayName": "Topics",
+ "description": "Topic names",
+ "name": "HORNETQ_TOPICS",
+ "value": "",
+ "required": false
+ },
+ {
+ "displayName": "HornetQ Password",
+ "description": "HornetQ cluster admin password",
+ "name": "HORNETQ_CLUSTER_PASSWORD",
+ "from": "[a-zA-Z0-9]{8}",
+ "generate": "expression",
+ "required": true
+ },
+ {
+ "displayName": "Github Webhook Secret",
+ "description": "GitHub trigger secret",
+ "name": "GITHUB_WEBHOOK_SECRET",
+ "from": "[a-zA-Z0-9]{8}",
+ "generate": "expression",
+ "required": true
+ },
+ {
+ "displayName": "Generic Webhook Secret",
+ "description": "Generic build trigger secret",
+ "name": "GENERIC_WEBHOOK_SECRET",
+ "from": "[a-zA-Z0-9]{8}",
+ "generate": "expression",
+ "required": true
+ },
+ {
+ "displayName": "ImageStream Namespace",
+ "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
+ },
+ {
+ "displayName": "JGroups Cluster Password",
+ "description": "JGroups cluster password",
+ "name": "JGROUPS_CLUSTER_PASSWORD",
+ "from": "[a-zA-Z0-9]{8}",
+ "generate": "expression",
+ "required": true
+ },
+ {
+ "displayName": "Deploy Exploded Archives",
+ "description": "Controls whether exploded deployment content should be automatically deployed",
+ "name": "AUTO_DEPLOY_EXPLODED",
+ "value": "false",
+ "required": false
+ },
+ {
+ "displayName": "Maven mirror URL",
+ "description": "Maven mirror to use for S2I builds",
+ "name": "MAVEN_MIRROR_URL",
+ "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": "",
+ "required": false
+ },
+ {
+ "description": "Container memory limit",
+ "name": "MEMORY_LIMIT",
+ "value": "1Gi",
+ "required": false
+ },
+ {
+ "displayName": "EAP Volume Size",
+ "description": "Size of the volume used by EAP for persisting data.",
+ "name": "VOLUME_CAPACITY",
+ "value": "1Gi",
+ "required": true
+ },
+ {
+ "displayName": "Split the data directory?",
+ "description": "Split the data directory for each node in a cluster.",
+ "name": "SPLIT_DATA",
+ "value": "true",
+ "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": {
+ "clusterIP": "None",
+ "ports": [
+ {
+ "name": "ping",
+ "port": 8888
+ }
+ ],
+ "selector": {
+ "deploymentConfig": "${APPLICATION_NAME}"
+ }
+ },
+ "metadata": {
+ "name": "${APPLICATION_NAME}-ping",
+ "labels": {
+ "application": "${APPLICATION_NAME}"
+ },
+ "annotations": {
+ "service.alpha.kubernetes.io/tolerate-unready-endpoints": "true",
+ "description": "The JGroups ping port for clustering."
+ }
+ }
+ },
+ {
+ "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": "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": {
+ "env": [
+ {
+ "name": "MAVEN_MIRROR_URL",
+ "value": "${MAVEN_MIRROR_URL}"
+ },
+ {
+ "name": "ARTIFACT_DIR",
+ "value": "${ARTIFACT_DIR}"
+ }
+ ],
+ "forcePull": true,
+ "from": {
+ "kind": "ImageStreamTag",
+ "namespace": "${IMAGE_STREAM_NAMESPACE}",
+ "name": "jboss-eap64-openshift:1.7"
+ }
+ }
+ },
+ "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": {
+ "terminationGracePeriodSeconds": 60,
+ "containers": [
+ {
+ "name": "${APPLICATION_NAME}",
+ "image": "${APPLICATION_NAME}",
+ "imagePullPolicy": "Always",
+ "resources": {
+ "limits": {
+ "memory": "${MEMORY_LIMIT}"
+ }
+ },
+ "livenessProbe": {
+ "exec": {
+ "command": [
+ "/bin/bash",
+ "-c",
+ "/opt/eap/bin/livenessProbe.sh"
+ ]
+ },
+ "initialDelaySeconds": 60
+ },
+ "readinessProbe": {
+ "exec": {
+ "command": [
+ "/bin/bash",
+ "-c",
+ "/opt/eap/bin/readinessProbe.sh"
+ ]
+ }
+ },
+ "volumeMounts": [
+ {
+ "mountPath": "/opt/eap/standalone/partitioned_data",
+ "name": "${APPLICATION_NAME}-eap-pvol"
+ }
+ ],
+ "ports": [
+ {
+ "name": "jolokia",
+ "containerPort": 8778,
+ "protocol": "TCP"
+ },
+ {
+ "name": "http",
+ "containerPort": 8080,
+ "protocol": "TCP"
+ },
+ {
+ "name": "ping",
+ "containerPort": 8888,
+ "protocol": "TCP"
+ }
+ ],
+ "env": [
+ {
+ "name": "JGROUPS_PING_PROTOCOL",
+ "value": "openshift.DNS_PING"
+ },
+ {
+ "name": "OPENSHIFT_DNS_PING_SERVICE_NAME",
+ "value": "${APPLICATION_NAME}-ping"
+ },
+ {
+ "name": "OPENSHIFT_DNS_PING_SERVICE_PORT",
+ "value": "8888"
+ },
+ {
+ "name": "HORNETQ_CLUSTER_PASSWORD",
+ "value": "${HORNETQ_CLUSTER_PASSWORD}"
+ },
+ {
+ "name": "HORNETQ_QUEUES",
+ "value": "${HORNETQ_QUEUES}"
+ },
+ {
+ "name": "HORNETQ_TOPICS",
+ "value": "${HORNETQ_TOPICS}"
+ },
+ {
+ "name": "JGROUPS_CLUSTER_PASSWORD",
+ "value": "${JGROUPS_CLUSTER_PASSWORD}"
+ },
+ {
+ "name": "AUTO_DEPLOY_EXPLODED",
+ "value": "${AUTO_DEPLOY_EXPLODED}"
+ },
+ {
+ "name": "SPLIT_DATA",
+ "value": "${SPLIT_DATA}"
+ }
+ ]
+ }
+ ],
+ "volumes": [
+ {
+ "name": "${APPLICATION_NAME}-eap-pvol",
+ "persistentVolumeClaim": {
+ "claimName": "${APPLICATION_NAME}-eap-claim"
+ }
+ }
+ ]
+ }
+ }
+ }
+ },
+ {
+ "kind": "DeploymentConfig",
+ "apiVersion": "v1",
+ "metadata": {
+ "name": "${APPLICATION_NAME}-migration",
+ "labels": {
+ "application": "${APPLICATION_NAME}"
+ }
+ },
+ "spec": {
+ "strategy": {
+ "type": "Recreate"
+ },
+ "triggers": [
+ {
+ "type": "ImageChange",
+ "imageChangeParams": {
+ "automatic": true,
+ "containerNames": [
+ "${APPLICATION_NAME}-migration"
+ ],
+ "from": {
+ "kind": "ImageStreamTag",
+ "name": "${APPLICATION_NAME}:latest"
+ }
+ }
+ },
+ {
+ "type": "ConfigChange"
+ }
+ ],
+ "replicas": 1,
+ "selector": {
+ "deploymentConfig": "${APPLICATION_NAME}-migration"
+ },
+ "template": {
+ "metadata": {
+ "name": "${APPLICATION_NAME}-migration",
+ "labels": {
+ "deploymentConfig": "${APPLICATION_NAME}-migration",
+ "application": "${APPLICATION_NAME}"
+ }
+ },
+ "spec": {
+ "terminationGracePeriodSeconds": 60,
+ "containers": [
+ {
+ "name": "${APPLICATION_NAME}-migration",
+ "image": "${APPLICATION_NAME}",
+ "command": [
+ "/opt/eap/bin/openshift-migrate.sh"
+ ],
+ "imagePullPolicy": "Always",
+ "resources": {
+ "limits": {
+ "memory": "${MEMORY_LIMIT}"
+ }
+ },
+ "volumeMounts": [
+ {
+ "mountPath": "/opt/eap/standalone/partitioned_data",
+ "name": "${APPLICATION_NAME}-eap-pvol"
+ }
+ ],
+ "ports": [
+ {
+ "name": "jolokia",
+ "containerPort": 8778,
+ "protocol": "TCP"
+ },
+ {
+ "name": "http",
+ "containerPort": 8080,
+ "protocol": "TCP"
+ },
+ {
+ "name": "ping",
+ "containerPort": 8888,
+ "protocol": "TCP"
+ }
+ ],
+ "env": [
+ {
+ "name": "JGROUPS_PING_PROTOCOL",
+ "value": "openshift.DNS_PING"
+ },
+ {
+ "name": "OPENSHIFT_DNS_PING_SERVICE_NAME",
+ "value": "${APPLICATION_NAME}-ping"
+ },
+ {
+ "name": "OPENSHIFT_DNS_PING_SERVICE_PORT",
+ "value": "8888"
+ },
+ {
+ "name": "HORNETQ_CLUSTER_PASSWORD",
+ "value": "${HORNETQ_CLUSTER_PASSWORD}"
+ },
+ {
+ "name": "HORNETQ_QUEUES",
+ "value": "${HORNETQ_QUEUES}"
+ },
+ {
+ "name": "HORNETQ_TOPICS",
+ "value": "${HORNETQ_TOPICS}"
+ },
+ {
+ "name": "JGROUPS_CLUSTER_PASSWORD",
+ "value": "${JGROUPS_CLUSTER_PASSWORD}"
+ },
+ {
+ "name": "AUTO_DEPLOY_EXPLODED",
+ "value": "${AUTO_DEPLOY_EXPLODED}"
+ },
+ {
+ "name": "SPLIT_DATA",
+ "value": "${SPLIT_DATA}"
+ }
+ ]
+ }
+ ],
+ "volumes": [
+ {
+ "name": "${APPLICATION_NAME}-eap-pvol",
+ "persistentVolumeClaim": {
+ "claimName": "${APPLICATION_NAME}-eap-claim"
+ }
+ }
+ ]
+ }
+ }
+ }
+ },
+ {
+ "apiVersion": "v1",
+ "kind": "PersistentVolumeClaim",
+ "metadata": {
+ "name": "${APPLICATION_NAME}-eap-claim",
+ "labels": {
+ "application": "${APPLICATION_NAME}"
+ }
+ },
+ "spec": {
+ "accessModes": [
+ "ReadWriteMany"
+ ],
+ "resources": {
+ "requests": {
+ "storage": "${VOLUME_CAPACITY}"
+ }
+ }
+ }
+ }
+ ]
+}
diff --git a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap70-amq-persistent-s2i.json b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap70-amq-persistent-s2i.json
index d16756bad..eb6929a2c 100644
--- a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap70-amq-persistent-s2i.json
+++ b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap70-amq-persistent-s2i.json
@@ -5,7 +5,7 @@
"annotations": {
"iconClass": "icon-eap",
"tags": "eap,javaee,java,jboss",
- "version": "1.4.7",
+ "version": "1.4.8",
"openshift.io/display-name": "JBoss EAP 7.0 + A-MQ (with https)",
"openshift.io/provider-display-name": "Red Hat, Inc.",
"description": "An example EAP 7 A-MQ application. For more information about using this template, see https://github.com/jboss-openshift/application-templates.",
@@ -17,9 +17,9 @@
},
"labels": {
"template": "eap70-amq-persistent-s2i",
- "xpaas": "1.4.7"
+ "xpaas": "1.4.8"
},
- "message": "A new EAP 7 and A-MQ persistent based application with SSL support has been created in your project. The username/password for accessing the A-MQ service is ${MQ_USERNAME}/${MQ_PASSWORD}. Please be sure to create the \"${SERVICE_ACCOUNT_NAME}\" service account and the following secrets: \"${HTTPS_SECRET}\" containing the ${HTTPS_KEYSTORE} file used for serving secure content; \"${JGROUPS_ENCRYPT_SECRET}\" containing the ${JGROUPS_ENCRYPT_KEYSTORE} file used for securing JGroups communications.",
+ "message": "A new EAP 7 and A-MQ persistent based application with SSL support has been created in your project. The username/password for accessing the A-MQ service is ${MQ_USERNAME}/${MQ_PASSWORD}. Please be sure to create the following secrets: \"${HTTPS_SECRET}\" containing the ${HTTPS_KEYSTORE} file used for serving secure content; \"${JGROUPS_ENCRYPT_SECRET}\" containing the ${JGROUPS_ENCRYPT_KEYSTORE} file used for securing JGroups communications.",
"parameters": [
{
"displayName": "Application Name",
@@ -67,7 +67,7 @@
"displayName": "A-MQ Volume Size",
"description": "Size of the volume used by A-MQ for persisting messages.",
"name": "VOLUME_CAPACITY",
- "value": "512Mi",
+ "value": "1Gi",
"required": true
},
{
@@ -113,13 +113,6 @@
"required": false
},
{
- "displayName": "Service Account Name",
- "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
- },
- {
"displayName": "Server Keystore Secret Name",
"description": "The name of the secret containing the keystore file",
"name": "HTTPS_SECRET",
@@ -174,7 +167,7 @@
"displayName": "A-MQ Mesh Discovery Type",
"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",
+ "value": "dns",
"required": false
},
{
@@ -262,6 +255,12 @@
"name": "ARTIFACT_DIR",
"value": "",
"required": false
+ },
+ {
+ "description": "Container memory limit",
+ "name": "MEMORY_LIMIT",
+ "value": "1Gi",
+ "required": false
}
],
"objects": [
@@ -319,6 +318,32 @@
"kind": "Service",
"apiVersion": "v1",
"spec": {
+ "clusterIP": "None",
+ "ports": [
+ {
+ "name": "ping",
+ "port": 8888
+ }
+ ],
+ "selector": {
+ "deploymentConfig": "${APPLICATION_NAME}"
+ }
+ },
+ "metadata": {
+ "name": "${APPLICATION_NAME}-ping",
+ "labels": {
+ "application": "${APPLICATION_NAME}"
+ },
+ "annotations": {
+ "service.alpha.kubernetes.io/tolerate-unready-endpoints": "true",
+ "description": "The JGroups ping port for clustering."
+ }
+ }
+ },
+ {
+ "kind": "Service",
+ "apiVersion": "v1",
+ "spec": {
"ports": [
{
"port": 61616,
@@ -340,6 +365,32 @@
}
},
{
+ "kind": "Service",
+ "apiVersion": "v1",
+ "spec": {
+ "clusterIP": "None",
+ "ports": [
+ {
+ "name": "mesh",
+ "port": 61616
+ }
+ ],
+ "selector": {
+ "deploymentConfig": "${APPLICATION_NAME}-amq"
+ }
+ },
+ "metadata": {
+ "name": "${APPLICATION_NAME}-amq-mesh",
+ "labels": {
+ "application": "${APPLICATION_NAME}"
+ },
+ "annotations": {
+ "service.alpha.kubernetes.io/tolerate-unready-endpoints": "true",
+ "description": "Supports node discovery for mesh formation."
+ }
+ }
+ },
+ {
"kind": "Route",
"apiVersion": "v1",
"id": "${APPLICATION_NAME}-http",
@@ -427,7 +478,7 @@
"from": {
"kind": "ImageStreamTag",
"namespace": "${IMAGE_STREAM_NAMESPACE}",
- "name": "jboss-eap70-openshift:1.6"
+ "name": "jboss-eap70-openshift:1.7"
}
}
},
@@ -504,13 +555,17 @@
}
},
"spec": {
- "serviceAccountName": "${SERVICE_ACCOUNT_NAME}",
"terminationGracePeriodSeconds": 60,
"containers": [
{
"name": "${APPLICATION_NAME}",
"image": "${APPLICATION_NAME}",
"imagePullPolicy": "Always",
+ "resources": {
+ "limits": {
+ "memory": "${MEMORY_LIMIT}"
+ }
+ },
"volumeMounts": [
{
"name": "eap-keystore-volume",
@@ -530,7 +585,8 @@
"-c",
"/opt/eap/bin/livenessProbe.sh"
]
- }
+ },
+ "initialDelaySeconds": 60
},
"readinessProbe": {
"exec": {
@@ -597,16 +653,16 @@
"value": "${MQ_SERIALIZABLE_PACKAGES}"
},
{
- "name": "OPENSHIFT_KUBE_PING_LABELS",
- "value": "application=${APPLICATION_NAME}"
+ "name": "JGROUPS_PING_PROTOCOL",
+ "value": "openshift.DNS_PING"
},
{
- "name": "OPENSHIFT_KUBE_PING_NAMESPACE",
- "valueFrom": {
- "fieldRef": {
- "fieldPath": "metadata.namespace"
- }
- }
+ "name": "OPENSHIFT_DNS_PING_SERVICE_NAME",
+ "value": "${APPLICATION_NAME}-ping"
+ },
+ {
+ "name": "OPENSHIFT_DNS_PING_SERVICE_PORT",
+ "value": "8888"
},
{
"name": "HTTPS_KEYSTORE_DIR",
@@ -704,7 +760,7 @@
"from": {
"kind": "ImageStreamTag",
"namespace": "${IMAGE_STREAM_NAMESPACE}",
- "name": "jboss-amq-62:1.6"
+ "name": "jboss-amq-62:1.7"
}
}
},
@@ -823,7 +879,7 @@
},
{
"name": "AMQ_MESH_SERVICE_NAME",
- "value": "${APPLICATION_NAME}-amq-tcp"
+ "value": "${APPLICATION_NAME}-amq-mesh"
},
{
"name": "AMQ_MESH_SERVICE_NAMESPACE",
diff --git a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap70-amq-s2i.json b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap70-amq-s2i.json
index 70323214f..ca0efa2d9 100644
--- a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap70-amq-s2i.json
+++ b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap70-amq-s2i.json
@@ -5,7 +5,7 @@
"annotations": {
"iconClass": "icon-eap",
"tags": "eap,javaee,java,jboss,hidden",
- "version": "1.4.7",
+ "version": "1.4.8",
"openshift.io/display-name": "JBoss EAP 7.0 + A-MQ (with https)",
"openshift.io/provider-display-name": "Red Hat, Inc.",
"description": "An example EAP 7 A-MQ application. For more information about using this template, see https://github.com/jboss-openshift/application-templates.",
@@ -17,9 +17,9 @@
},
"labels": {
"template": "eap70-amq-s2i",
- "xpaas": "1.4.7"
+ "xpaas": "1.4.8"
},
- "message": "A new EAP 7 and A-MQ based application with SSL support has been created in your project. The username/password for accessing the A-MQ service is ${MQ_USERNAME}/${MQ_PASSWORD}. Please be sure to create the \"${SERVICE_ACCOUNT_NAME}\" service account and the following secrets: \"${HTTPS_SECRET}\" containing the ${HTTPS_KEYSTORE} file used for serving secure content; \"${JGROUPS_ENCRYPT_SECRET}\" containing the ${JGROUPS_ENCRYPT_KEYSTORE} file used for securing JGroups communications.",
+ "message": "A new EAP 7 and A-MQ based application with SSL support has been created in your project. The username/password for accessing the A-MQ service is ${MQ_USERNAME}/${MQ_PASSWORD}. Please be sure to create the following secrets: \"${HTTPS_SECRET}\" containing the ${HTTPS_KEYSTORE} file used for serving secure content; \"${JGROUPS_ENCRYPT_SECRET}\" containing the ${JGROUPS_ENCRYPT_KEYSTORE} file used for securing JGroups communications.",
"parameters": [
{
"displayName": "Application Name",
@@ -99,13 +99,6 @@
"required": false
},
{
- "displayName": "Service Account Name",
- "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
- },
- {
"displayName": "Server Keystore Secret Name",
"description": "The name of the secret containing the keystore file",
"name": "HTTPS_SECRET",
@@ -160,7 +153,7 @@
"displayName": "A-MQ Mesh Discovery Type",
"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",
+ "value": "dns",
"required": false
},
{
@@ -248,6 +241,12 @@
"name": "ARTIFACT_DIR",
"value": "",
"required": false
+ },
+ {
+ "description": "Container memory limit",
+ "name": "MEMORY_LIMIT",
+ "value": "1Gi",
+ "required": false
}
],
"objects": [
@@ -305,6 +304,32 @@
"kind": "Service",
"apiVersion": "v1",
"spec": {
+ "clusterIP": "None",
+ "ports": [
+ {
+ "name": "ping",
+ "port": 8888
+ }
+ ],
+ "selector": {
+ "deploymentConfig": "${APPLICATION_NAME}"
+ }
+ },
+ "metadata": {
+ "name": "${APPLICATION_NAME}-ping",
+ "labels": {
+ "application": "${APPLICATION_NAME}"
+ },
+ "annotations": {
+ "service.alpha.kubernetes.io/tolerate-unready-endpoints": "true",
+ "description": "The JGroups ping port for clustering."
+ }
+ }
+ },
+ {
+ "kind": "Service",
+ "apiVersion": "v1",
+ "spec": {
"ports": [
{
"port": 61616,
@@ -326,6 +351,32 @@
}
},
{
+ "kind": "Service",
+ "apiVersion": "v1",
+ "spec": {
+ "clusterIP": "None",
+ "ports": [
+ {
+ "name": "mesh",
+ "port": 61616
+ }
+ ],
+ "selector": {
+ "deploymentConfig": "${APPLICATION_NAME}-amq"
+ }
+ },
+ "metadata": {
+ "name": "${APPLICATION_NAME}-amq-mesh",
+ "labels": {
+ "application": "${APPLICATION_NAME}"
+ },
+ "annotations": {
+ "service.alpha.kubernetes.io/tolerate-unready-endpoints": "true",
+ "description": "Supports node discovery for mesh formation."
+ }
+ }
+ },
+ {
"kind": "Route",
"apiVersion": "v1",
"id": "${APPLICATION_NAME}-http",
@@ -413,7 +464,7 @@
"from": {
"kind": "ImageStreamTag",
"namespace": "${IMAGE_STREAM_NAMESPACE}",
- "name": "jboss-eap70-openshift:1.6"
+ "name": "jboss-eap70-openshift:1.7"
}
}
},
@@ -490,13 +541,17 @@
}
},
"spec": {
- "serviceAccountName": "${SERVICE_ACCOUNT_NAME}",
"terminationGracePeriodSeconds": 60,
"containers": [
{
"name": "${APPLICATION_NAME}",
"image": "${APPLICATION_NAME}",
"imagePullPolicy": "Always",
+ "resources": {
+ "limits": {
+ "memory": "${MEMORY_LIMIT}"
+ }
+ },
"volumeMounts": [
{
"name": "eap-keystore-volume",
@@ -516,7 +571,8 @@
"-c",
"/opt/eap/bin/livenessProbe.sh"
]
- }
+ },
+ "initialDelaySeconds": 60
},
"readinessProbe": {
"exec": {
@@ -583,16 +639,16 @@
"value": "${MQ_SERIALIZABLE_PACKAGES}"
},
{
- "name": "OPENSHIFT_KUBE_PING_LABELS",
- "value": "application=${APPLICATION_NAME}"
+ "name": "JGROUPS_PING_PROTOCOL",
+ "value": "openshift.DNS_PING"
},
{
- "name": "OPENSHIFT_KUBE_PING_NAMESPACE",
- "valueFrom": {
- "fieldRef": {
- "fieldPath": "metadata.namespace"
- }
- }
+ "name": "OPENSHIFT_DNS_PING_SERVICE_NAME",
+ "value": "${APPLICATION_NAME}-ping"
+ },
+ {
+ "name": "OPENSHIFT_DNS_PING_SERVICE_PORT",
+ "value": "8888"
},
{
"name": "HTTPS_KEYSTORE_DIR",
@@ -687,7 +743,7 @@
"from": {
"kind": "ImageStreamTag",
"namespace": "${IMAGE_STREAM_NAMESPACE}",
- "name": "jboss-amq-62:1.6"
+ "name": "jboss-amq-62:1.7"
}
}
},
@@ -796,7 +852,7 @@
},
{
"name": "AMQ_MESH_SERVICE_NAME",
- "value": "${APPLICATION_NAME}-amq-tcp"
+ "value": "${APPLICATION_NAME}-amq-mesh"
},
{
"name": "AMQ_MESH_SERVICE_NAMESPACE",
diff --git a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap70-basic-s2i.json b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap70-basic-s2i.json
index 312db1971..a0d781a4d 100644
--- a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap70-basic-s2i.json
+++ b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap70-basic-s2i.json
@@ -5,7 +5,7 @@
"annotations": {
"iconClass": "icon-eap",
"tags": "eap,javaee,java,jboss",
- "version": "1.4.7",
+ "version": "1.4.8",
"openshift.io/display-name": "JBoss EAP 7.0 (no https)",
"openshift.io/provider-display-name": "Red Hat, Inc.",
"description": "An example EAP 7 application. For more information about using this template, see https://github.com/jboss-openshift/application-templates.",
@@ -17,7 +17,7 @@
},
"labels": {
"template": "eap70-basic-s2i",
- "xpaas": "1.4.7"
+ "xpaas": "1.4.8"
},
"message": "A new EAP 7 based application has been created in your project.",
"parameters": [
@@ -128,6 +128,12 @@
"name": "ARTIFACT_DIR",
"value": "",
"required": false
+ },
+ {
+ "description": "Container memory limit",
+ "name": "MEMORY_LIMIT",
+ "value": "1Gi",
+ "required": false
}
],
"objects": [
@@ -156,6 +162,32 @@
}
},
{
+ "kind": "Service",
+ "apiVersion": "v1",
+ "spec": {
+ "clusterIP": "None",
+ "ports": [
+ {
+ "name": "ping",
+ "port": 8888
+ }
+ ],
+ "selector": {
+ "deploymentConfig": "${APPLICATION_NAME}"
+ }
+ },
+ "metadata": {
+ "name": "${APPLICATION_NAME}-ping",
+ "labels": {
+ "application": "${APPLICATION_NAME}"
+ },
+ "annotations": {
+ "service.alpha.kubernetes.io/tolerate-unready-endpoints": "true",
+ "description": "The JGroups ping port for clustering."
+ }
+ }
+ },
+ {
"kind": "Route",
"apiVersion": "v1",
"id": "${APPLICATION_NAME}-http",
@@ -220,7 +252,7 @@
"from": {
"kind": "ImageStreamTag",
"namespace": "${IMAGE_STREAM_NAMESPACE}",
- "name": "jboss-eap70-openshift:1.6"
+ "name": "jboss-eap70-openshift:1.7"
}
}
},
@@ -303,6 +335,11 @@
"name": "${APPLICATION_NAME}",
"image": "${APPLICATION_NAME}",
"imagePullPolicy": "Always",
+ "resources": {
+ "limits": {
+ "memory": "${MEMORY_LIMIT}"
+ }
+ },
"livenessProbe": {
"exec": {
"command": [
@@ -310,7 +347,8 @@
"-c",
"/opt/eap/bin/livenessProbe.sh"
]
- }
+ },
+ "initialDelaySeconds": 60
},
"readinessProbe": {
"exec": {
@@ -340,16 +378,16 @@
],
"env": [
{
- "name": "OPENSHIFT_KUBE_PING_LABELS",
- "value": "application=${APPLICATION_NAME}"
+ "name": "JGROUPS_PING_PROTOCOL",
+ "value": "openshift.DNS_PING"
+ },
+ {
+ "name": "OPENSHIFT_DNS_PING_SERVICE_NAME",
+ "value": "${APPLICATION_NAME}-ping"
},
{
- "name": "OPENSHIFT_KUBE_PING_NAMESPACE",
- "valueFrom": {
- "fieldRef": {
- "fieldPath": "metadata.namespace"
- }
- }
+ "name": "OPENSHIFT_DNS_PING_SERVICE_PORT",
+ "value": "8888"
},
{
"name": "MQ_CLUSTER_PASSWORD",
diff --git a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap70-https-s2i.json b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap70-https-s2i.json
index 7c3b35f5a..0b7d09001 100644
--- a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap70-https-s2i.json
+++ b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap70-https-s2i.json
@@ -5,7 +5,7 @@
"annotations": {
"iconClass": "icon-eap",
"tags": "eap,javaee,java,jboss,hidden",
- "version": "1.4.7",
+ "version": "1.4.8",
"openshift.io/display-name": "JBoss EAP 7.0 (with https)",
"openshift.io/provider-display-name": "Red Hat, Inc.",
"description": "An example EAP 7 application. For more information about using this template, see https://github.com/jboss-openshift/application-templates.",
@@ -17,9 +17,9 @@
},
"labels": {
"template": "eap70-https-s2i",
- "xpaas": "1.4.7"
+ "xpaas": "1.4.8"
},
- "message": "A new EAP 7 based application with SSL support has been created in your project. Please be sure to create the \"${SERVICE_ACCOUNT_NAME}\" service account and the following secrets: \"${HTTPS_SECRET}\" containing the ${HTTPS_KEYSTORE} file used for serving secure content; \"${JGROUPS_ENCRYPT_SECRET}\" containing the ${JGROUPS_ENCRYPT_KEYSTORE} file used for securing JGroups communications.",
+ "message": "A new EAP 7 based application with SSL support has been created in your project. Please be sure to create the following secrets: \"${HTTPS_SECRET}\" containing the ${HTTPS_KEYSTORE} file used for serving secure content; \"${JGROUPS_ENCRYPT_SECRET}\" containing the ${JGROUPS_ENCRYPT_KEYSTORE} file used for securing JGroups communications.",
"parameters": [
{
"displayName": "Application Name",
@@ -78,13 +78,6 @@
"required": false
},
{
- "displayName": "Service Account Name",
- "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
- },
- {
"displayName": "Server Keystore Secret Name",
"description": "The name of the secret containing the keystore file",
"name": "HTTPS_SECRET",
@@ -205,6 +198,12 @@
"name": "ARTIFACT_DIR",
"value": "",
"required": false
+ },
+ {
+ "description": "Container memory limit",
+ "name": "MEMORY_LIMIT",
+ "value": "1Gi",
+ "required": false
}
],
"objects": [
@@ -257,6 +256,32 @@
}
},
{
+ "kind": "Service",
+ "apiVersion": "v1",
+ "spec": {
+ "clusterIP": "None",
+ "ports": [
+ {
+ "name": "ping",
+ "port": 8888
+ }
+ ],
+ "selector": {
+ "deploymentConfig": "${APPLICATION_NAME}"
+ }
+ },
+ "metadata": {
+ "name": "${APPLICATION_NAME}-ping",
+ "labels": {
+ "application": "${APPLICATION_NAME}"
+ },
+ "annotations": {
+ "service.alpha.kubernetes.io/tolerate-unready-endpoints": "true",
+ "description": "The JGroups ping port for clustering."
+ }
+ }
+ },
+ {
"kind": "Route",
"apiVersion": "v1",
"id": "${APPLICATION_NAME}-http",
@@ -344,7 +369,7 @@
"from": {
"kind": "ImageStreamTag",
"namespace": "${IMAGE_STREAM_NAMESPACE}",
- "name": "jboss-eap70-openshift:1.6"
+ "name": "jboss-eap70-openshift:1.7"
}
}
},
@@ -421,13 +446,17 @@
}
},
"spec": {
- "serviceAccountName": "${SERVICE_ACCOUNT_NAME}",
"terminationGracePeriodSeconds": 75,
"containers": [
{
"name": "${APPLICATION_NAME}",
"image": "${APPLICATION_NAME}",
"imagePullPolicy": "Always",
+ "resources": {
+ "limits": {
+ "memory": "${MEMORY_LIMIT}"
+ }
+ },
"volumeMounts": [
{
"name": "eap-keystore-volume",
@@ -447,7 +476,8 @@
"-c",
"/opt/eap/bin/livenessProbe.sh"
]
- }
+ },
+ "initialDelaySeconds": 60
},
"readinessProbe": {
"exec": {
@@ -482,16 +512,16 @@
],
"env": [
{
- "name": "OPENSHIFT_KUBE_PING_LABELS",
- "value": "application=${APPLICATION_NAME}"
+ "name": "JGROUPS_PING_PROTOCOL",
+ "value": "openshift.DNS_PING"
+ },
+ {
+ "name": "OPENSHIFT_DNS_PING_SERVICE_NAME",
+ "value": "${APPLICATION_NAME}-ping"
},
{
- "name": "OPENSHIFT_KUBE_PING_NAMESPACE",
- "valueFrom": {
- "fieldRef": {
- "fieldPath": "metadata.namespace"
- }
- }
+ "name": "OPENSHIFT_DNS_PING_SERVICE_PORT",
+ "value": "8888"
},
{
"name": "HTTPS_KEYSTORE_DIR",
diff --git a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap70-mongodb-persistent-s2i.json b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap70-mongodb-persistent-s2i.json
index 205e451c7..d6a154a38 100644
--- a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap70-mongodb-persistent-s2i.json
+++ b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap70-mongodb-persistent-s2i.json
@@ -5,7 +5,7 @@
"annotations": {
"iconClass": "icon-eap",
"tags": "eap,javaee,java,jboss,hidden",
- "version": "1.4.7",
+ "version": "1.4.8",
"openshift.io/display-name": "JBoss EAP 7.0 + MongoDB (with https)",
"openshift.io/provider-display-name": "Red Hat, Inc.",
"description": "An example EAP 7 application with a MongoDB database. For more information about using this template, see https://github.com/jboss-openshift/application-templates.",
@@ -17,9 +17,9 @@
},
"labels": {
"template": "eap70-mongodb-persistent-s2i",
- "xpaas": "1.4.7"
+ "xpaas": "1.4.8"
},
- "message": "A new EAP 7 and MongoDB persistent based application with SSL support has been created in your project. The username/password for accessing the MongoDB database \"${DB_DATABASE}\" is ${DB_USERNAME}/${DB_PASSWORD} (Admin password is \"${DB_ADMIN_PASSWORD}\"). Please be sure to create the \"${SERVICE_ACCOUNT_NAME}\" service account and the following secrets: \"${HTTPS_SECRET}\" containing the ${HTTPS_KEYSTORE} file used for serving secure content; \"${JGROUPS_ENCRYPT_SECRET}\" containing the ${JGROUPS_ENCRYPT_KEYSTORE} file used for securing JGroups communications.",
+ "message": "A new EAP 7 and MongoDB persistent based application with SSL support has been created in your project. The username/password for accessing the MongoDB database \"${DB_DATABASE}\" is ${DB_USERNAME}/${DB_PASSWORD} (Admin password is \"${DB_ADMIN_PASSWORD}\"). Please be sure to create the following secrets: \"${HTTPS_SECRET}\" containing the ${HTTPS_KEYSTORE} file used for serving secure content; \"${JGROUPS_ENCRYPT_SECRET}\" containing the ${JGROUPS_ENCRYPT_KEYSTORE} file used for securing JGroups communications.",
"parameters": [
{
"displayName": "Application Name",
@@ -81,7 +81,7 @@
"displayName": "Database Volume Capacity",
"description": "Size of persistent storage for database volume.",
"name": "VOLUME_CAPACITY",
- "value": "512Mi",
+ "value": "1Gi",
"required": true
},
{
@@ -99,13 +99,6 @@
"required": false
},
{
- "displayName": "Service Account Name",
- "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
- },
- {
"displayName": "Server Keystore Secret Name",
"description": "The name of the secret containing the keystore file",
"name": "HTTPS_SECRET",
@@ -293,6 +286,12 @@
"name": "MONGODB_IMAGE_STREAM_TAG",
"value": "3.2",
"required": true
+ },
+ {
+ "description": "Container memory limit",
+ "name": "MEMORY_LIMIT",
+ "value": "1Gi",
+ "required": false
}
],
"objects": [
@@ -371,6 +370,32 @@
}
},
{
+ "kind": "Service",
+ "apiVersion": "v1",
+ "spec": {
+ "clusterIP": "None",
+ "ports": [
+ {
+ "name": "ping",
+ "port": 8888
+ }
+ ],
+ "selector": {
+ "deploymentConfig": "${APPLICATION_NAME}"
+ }
+ },
+ "metadata": {
+ "name": "${APPLICATION_NAME}-ping",
+ "labels": {
+ "application": "${APPLICATION_NAME}"
+ },
+ "annotations": {
+ "service.alpha.kubernetes.io/tolerate-unready-endpoints": "true",
+ "description": "The JGroups ping port for clustering."
+ }
+ }
+ },
+ {
"kind": "Route",
"apiVersion": "v1",
"id": "${APPLICATION_NAME}-http",
@@ -458,7 +483,7 @@
"from": {
"kind": "ImageStreamTag",
"namespace": "${IMAGE_STREAM_NAMESPACE}",
- "name": "jboss-eap70-openshift:1.6"
+ "name": "jboss-eap70-openshift:1.7"
}
}
},
@@ -535,13 +560,17 @@
}
},
"spec": {
- "serviceAccountName": "${SERVICE_ACCOUNT_NAME}",
"terminationGracePeriodSeconds": 75,
"containers": [
{
"name": "${APPLICATION_NAME}",
"image": "${APPLICATION_NAME}",
"imagePullPolicy": "Always",
+ "resources": {
+ "limits": {
+ "memory": "${MEMORY_LIMIT}"
+ }
+ },
"volumeMounts": [
{
"name": "eap-keystore-volume",
@@ -561,7 +590,8 @@
"-c",
"/opt/eap/bin/livenessProbe.sh"
]
- }
+ },
+ "initialDelaySeconds": 60
},
"readinessProbe": {
"exec": {
@@ -632,16 +662,16 @@
"value": "${DB_TX_ISOLATION}"
},
{
- "name": "OPENSHIFT_KUBE_PING_LABELS",
- "value": "application=${APPLICATION_NAME}"
+ "name": "JGROUPS_PING_PROTOCOL",
+ "value": "openshift.DNS_PING"
+ },
+ {
+ "name": "OPENSHIFT_DNS_PING_SERVICE_NAME",
+ "value": "${APPLICATION_NAME}-ping"
},
{
- "name": "OPENSHIFT_KUBE_PING_NAMESPACE",
- "valueFrom": {
- "fieldRef": {
- "fieldPath": "metadata.namespace"
- }
- }
+ "name": "OPENSHIFT_DNS_PING_SERVICE_PORT",
+ "value": "8888"
},
{
"name": "HTTPS_KEYSTORE_DIR",
diff --git a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap70-mongodb-s2i.json b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap70-mongodb-s2i.json
index 63b57d5dc..31a2e161f 100644
--- a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap70-mongodb-s2i.json
+++ b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap70-mongodb-s2i.json
@@ -5,7 +5,7 @@
"annotations": {
"iconClass": "icon-eap",
"tags": "eap,javaee,java,jboss,hidden",
- "version": "1.4.7",
+ "version": "1.4.8",
"openshift.io/display-name": "Boss EAP 7.0 + MongoDB (Ephemeral with https)",
"openshift.io/provider-display-name": "Red Hat, Inc.",
"description": "An example EAP 7 application with a MongoDB database. For more information about using this template, see https://github.com/jboss-openshift/application-templates.",
@@ -17,9 +17,9 @@
},
"labels": {
"template": "eap70-mongodb-s2i",
- "xpaas": "1.4.7"
+ "xpaas": "1.4.8"
},
- "message": "A new EAP 7 and MongoDB based application with SSL support has been created in your project. The username/password for accessing the MongoDB database \"${DB_DATABASE}\" is ${DB_USERNAME}/${DB_PASSWORD} (Admin password is \"${DB_ADMIN_PASSWORD}\"). Please be sure to create the \"${SERVICE_ACCOUNT_NAME}\" service account and the following secrets: \"${HTTPS_SECRET}\" containing the ${HTTPS_KEYSTORE} file used for serving secure content; \"${JGROUPS_ENCRYPT_SECRET}\" containing the ${JGROUPS_ENCRYPT_KEYSTORE} file used for securing JGroups communications.",
+ "message": "A new EAP 7 and MongoDB based application with SSL support has been created in your project. The username/password for accessing the MongoDB database \"${DB_DATABASE}\" is ${DB_USERNAME}/${DB_PASSWORD} (Admin password is \"${DB_ADMIN_PASSWORD}\"). Please be sure to create the following secrets: \"${HTTPS_SECRET}\" containing the ${HTTPS_KEYSTORE} file used for serving secure content; \"${JGROUPS_ENCRYPT_SECRET}\" containing the ${JGROUPS_ENCRYPT_KEYSTORE} file used for securing JGroups communications.",
"parameters": [
{
"displayName": "Application Name",
@@ -92,13 +92,6 @@
"required": false
},
{
- "displayName": "Service Account Name",
- "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
- },
- {
"displayName": "Server Keystore Secret Name",
"description": "The name of the secret containing the keystore file",
"name": "HTTPS_SECRET",
@@ -286,6 +279,12 @@
"name": "MONGODB_IMAGE_STREAM_TAG",
"value": "3.2",
"required": true
+ },
+ {
+ "description": "Container memory limit",
+ "name": "MEMORY_LIMIT",
+ "value": "1Gi",
+ "required": false
}
],
"objects": [
@@ -364,6 +363,32 @@
}
},
{
+ "kind": "Service",
+ "apiVersion": "v1",
+ "spec": {
+ "clusterIP": "None",
+ "ports": [
+ {
+ "name": "ping",
+ "port": 8888
+ }
+ ],
+ "selector": {
+ "deploymentConfig": "${APPLICATION_NAME}"
+ }
+ },
+ "metadata": {
+ "name": "${APPLICATION_NAME}-ping",
+ "labels": {
+ "application": "${APPLICATION_NAME}"
+ },
+ "annotations": {
+ "service.alpha.kubernetes.io/tolerate-unready-endpoints": "true",
+ "description": "The JGroups ping port for clustering."
+ }
+ }
+ },
+ {
"kind": "Route",
"apiVersion": "v1",
"id": "${APPLICATION_NAME}-http",
@@ -451,7 +476,7 @@
"from": {
"kind": "ImageStreamTag",
"namespace": "${IMAGE_STREAM_NAMESPACE}",
- "name": "jboss-eap70-openshift:1.6"
+ "name": "jboss-eap70-openshift:1.7"
}
}
},
@@ -528,13 +553,17 @@
}
},
"spec": {
- "serviceAccountName": "${SERVICE_ACCOUNT_NAME}",
"terminationGracePeriodSeconds": 75,
"containers": [
{
"name": "${APPLICATION_NAME}",
"image": "${APPLICATION_NAME}",
"imagePullPolicy": "Always",
+ "resources": {
+ "limits": {
+ "memory": "${MEMORY_LIMIT}"
+ }
+ },
"volumeMounts": [
{
"name": "eap-keystore-volume",
@@ -554,7 +583,8 @@
"-c",
"/opt/eap/bin/livenessProbe.sh"
]
- }
+ },
+ "initialDelaySeconds": 60
},
"readinessProbe": {
"exec": {
@@ -625,16 +655,16 @@
"value": "${DB_TX_ISOLATION}"
},
{
- "name": "OPENSHIFT_KUBE_PING_LABELS",
- "value": "application=${APPLICATION_NAME}"
+ "name": "JGROUPS_PING_PROTOCOL",
+ "value": "openshift.DNS_PING"
+ },
+ {
+ "name": "OPENSHIFT_DNS_PING_SERVICE_NAME",
+ "value": "${APPLICATION_NAME}-ping"
},
{
- "name": "OPENSHIFT_KUBE_PING_NAMESPACE",
- "valueFrom": {
- "fieldRef": {
- "fieldPath": "metadata.namespace"
- }
- }
+ "name": "OPENSHIFT_DNS_PING_SERVICE_PORT",
+ "value": "8888"
},
{
"name": "HTTPS_KEYSTORE_DIR",
@@ -803,8 +833,22 @@
"name": "MONGODB_QUIET",
"value": "${MONGODB_QUIET}"
}
+ ],
+ "volumeMounts": [
+ {
+ "mountPath": "/var/lib/mongodb/data",
+ "name": "${APPLICATION_NAME}-data"
+ }
]
}
+ ],
+ "volumes": [
+ {
+ "emptyDir": {
+ "medium": ""
+ },
+ "name": "${APPLICATION_NAME}-data"
+ }
]
}
}
diff --git a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap70-mysql-persistent-s2i.json b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap70-mysql-persistent-s2i.json
index f9f77f22c..d487cfc40 100644
--- a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap70-mysql-persistent-s2i.json
+++ b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap70-mysql-persistent-s2i.json
@@ -5,7 +5,7 @@
"annotations": {
"iconClass": "icon-eap",
"tags": "eap,javaee,java,jboss",
- "version": "1.4.7",
+ "version": "1.4.8",
"openshift.io/display-name": "JBoss EAP 7.0 + MySQL (with https)",
"openshift.io/provider-display-name": "Red Hat, Inc.",
"description": "An example EAP 7 application with a MySQL database. For more information about using this template, see https://github.com/jboss-openshift/application-templates.",
@@ -17,9 +17,9 @@
},
"labels": {
"template": "eap70-mysql-persistent-s2i",
- "xpaas": "1.4.7"
+ "xpaas": "1.4.8"
},
- "message": "A new EAP 7 and MySQL persistent based application with SSL support has been created in your project. The username/password for accessing the MySQL database \"${DB_DATABASE}\" is ${DB_USERNAME}/${DB_PASSWORD}. Please be sure to create the \"${SERVICE_ACCOUNT_NAME}\" service account and the following secrets: \"${HTTPS_SECRET}\" containing the ${HTTPS_KEYSTORE} file used for serving secure content; \"${JGROUPS_ENCRYPT_SECRET}\" containing the ${JGROUPS_ENCRYPT_KEYSTORE} file used for securing JGroups communications.",
+ "message": "A new EAP 7 and MySQL persistent based application with SSL support has been created in your project. The username/password for accessing the MySQL database \"${DB_DATABASE}\" is ${DB_USERNAME}/${DB_PASSWORD}. Please be sure to create the following secrets: \"${HTTPS_SECRET}\" containing the ${HTTPS_KEYSTORE} file used for serving secure content; \"${JGROUPS_ENCRYPT_SECRET}\" containing the ${JGROUPS_ENCRYPT_KEYSTORE} file used for securing JGroups communications.",
"parameters": [
{
"displayName": "Application Name",
@@ -81,7 +81,7 @@
"displayName": "Database Volume Capacity",
"description": "Size of persistent storage for database volume.",
"name": "VOLUME_CAPACITY",
- "value": "512Mi",
+ "value": "1Gi",
"required": true
},
{
@@ -99,13 +99,6 @@
"required": false
},
{
- "displayName": "Service Account Name",
- "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
- },
- {
"displayName": "Server Keystore Secret Name",
"description": "The name of the secret containing the keystore file",
"name": "HTTPS_SECRET",
@@ -297,6 +290,12 @@
"name": "MYSQL_IMAGE_STREAM_TAG",
"value": "5.7",
"required": true
+ },
+ {
+ "description": "Container memory limit",
+ "name": "MEMORY_LIMIT",
+ "value": "1Gi",
+ "required": false
}
],
"objects": [
@@ -375,6 +374,32 @@
}
},
{
+ "kind": "Service",
+ "apiVersion": "v1",
+ "spec": {
+ "clusterIP": "None",
+ "ports": [
+ {
+ "name": "ping",
+ "port": 8888
+ }
+ ],
+ "selector": {
+ "deploymentConfig": "${APPLICATION_NAME}"
+ }
+ },
+ "metadata": {
+ "name": "${APPLICATION_NAME}-ping",
+ "labels": {
+ "application": "${APPLICATION_NAME}"
+ },
+ "annotations": {
+ "service.alpha.kubernetes.io/tolerate-unready-endpoints": "true",
+ "description": "The JGroups ping port for clustering."
+ }
+ }
+ },
+ {
"kind": "Route",
"apiVersion": "v1",
"id": "${APPLICATION_NAME}-http",
@@ -462,7 +487,7 @@
"from": {
"kind": "ImageStreamTag",
"namespace": "${IMAGE_STREAM_NAMESPACE}",
- "name": "jboss-eap70-openshift:1.6"
+ "name": "jboss-eap70-openshift:1.7"
}
}
},
@@ -539,13 +564,17 @@
}
},
"spec": {
- "serviceAccountName": "${SERVICE_ACCOUNT_NAME}",
"terminationGracePeriodSeconds": 75,
"containers": [
{
"name": "${APPLICATION_NAME}",
"image": "${APPLICATION_NAME}",
"imagePullPolicy": "Always",
+ "resources": {
+ "limits": {
+ "memory": "${MEMORY_LIMIT}"
+ }
+ },
"volumeMounts": [
{
"name": "eap-keystore-volume",
@@ -565,7 +594,8 @@
"-c",
"/opt/eap/bin/livenessProbe.sh"
]
- }
+ },
+ "initialDelaySeconds": 60
},
"readinessProbe": {
"exec": {
@@ -636,16 +666,16 @@
"value": "${DB_TX_ISOLATION}"
},
{
- "name": "OPENSHIFT_KUBE_PING_LABELS",
- "value": "application=${APPLICATION_NAME}"
+ "name": "JGROUPS_PING_PROTOCOL",
+ "value": "openshift.DNS_PING"
+ },
+ {
+ "name": "OPENSHIFT_DNS_PING_SERVICE_NAME",
+ "value": "${APPLICATION_NAME}-ping"
},
{
- "name": "OPENSHIFT_KUBE_PING_NAMESPACE",
- "valueFrom": {
- "fieldRef": {
- "fieldPath": "metadata.namespace"
- }
- }
+ "name": "OPENSHIFT_DNS_PING_SERVICE_PORT",
+ "value": "8888"
},
{
"name": "HTTPS_KEYSTORE_DIR",
diff --git a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap70-mysql-s2i.json b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap70-mysql-s2i.json
index 8ea433a80..ee4e8f01d 100644
--- a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap70-mysql-s2i.json
+++ b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap70-mysql-s2i.json
@@ -5,7 +5,7 @@
"annotations": {
"iconClass": "icon-eap",
"tags": "eap,javaee,java,jboss,hidden",
- "version": "1.4.7",
+ "version": "1.4.8",
"openshift.io/display-name": "JBoss EAP 7.0 + MySQL (Ephemeral with https)",
"openshift.io/provider-display-name": "Red Hat, Inc.",
"description": "An example EAP 7 application with a MySQL database. For more information about using this template, see https://github.com/jboss-openshift/application-templates.",
@@ -17,9 +17,9 @@
},
"labels": {
"template": "eap70-mysql-s2i",
- "xpaas": "1.4.7"
+ "xpaas": "1.4.8"
},
- "message": "A new EAP 7 and MySQL based application with SSL support has been created in your project. The username/password for accessing the MySQL database \"${DB_DATABASE}\" is ${DB_USERNAME}/${DB_PASSWORD}. Please be sure to create the \"${SERVICE_ACCOUNT_NAME}\" service account and the following secrets: \"${HTTPS_SECRET}\" containing the ${HTTPS_KEYSTORE} file used for serving secure content; \"${JGROUPS_ENCRYPT_SECRET}\" containing the ${JGROUPS_ENCRYPT_KEYSTORE} file used for securing JGroups communications.",
+ "message": "A new EAP 7 and MySQL based application with SSL support has been created in your project. The username/password for accessing the MySQL database \"${DB_DATABASE}\" is ${DB_USERNAME}/${DB_PASSWORD}. Please be sure to create the following secrets: \"${HTTPS_SECRET}\" containing the ${HTTPS_KEYSTORE} file used for serving secure content; \"${JGROUPS_ENCRYPT_SECRET}\" containing the ${JGROUPS_ENCRYPT_KEYSTORE} file used for securing JGroups communications.",
"parameters": [
{
"displayName": "Application Name",
@@ -92,13 +92,6 @@
"required": false
},
{
- "displayName": "Service Account Name",
- "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
- },
- {
"displayName": "Server Keystore Secret Name",
"description": "The name of the secret containing the keystore file",
"name": "HTTPS_SECRET",
@@ -290,6 +283,12 @@
"name": "MYSQL_IMAGE_STREAM_TAG",
"value": "5.7",
"required": true
+ },
+ {
+ "description": "Container memory limit",
+ "name": "MEMORY_LIMIT",
+ "value": "1Gi",
+ "required": false
}
],
"objects": [
@@ -368,6 +367,32 @@
}
},
{
+ "kind": "Service",
+ "apiVersion": "v1",
+ "spec": {
+ "clusterIP": "None",
+ "ports": [
+ {
+ "name": "ping",
+ "port": 8888
+ }
+ ],
+ "selector": {
+ "deploymentConfig": "${APPLICATION_NAME}"
+ }
+ },
+ "metadata": {
+ "name": "${APPLICATION_NAME}-ping",
+ "labels": {
+ "application": "${APPLICATION_NAME}"
+ },
+ "annotations": {
+ "service.alpha.kubernetes.io/tolerate-unready-endpoints": "true",
+ "description": "The JGroups ping port for clustering."
+ }
+ }
+ },
+ {
"kind": "Route",
"apiVersion": "v1",
"id": "${APPLICATION_NAME}-http",
@@ -455,7 +480,7 @@
"from": {
"kind": "ImageStreamTag",
"namespace": "${IMAGE_STREAM_NAMESPACE}",
- "name": "jboss-eap70-openshift:1.6"
+ "name": "jboss-eap70-openshift:1.7"
}
}
},
@@ -532,13 +557,17 @@
}
},
"spec": {
- "serviceAccountName": "${SERVICE_ACCOUNT_NAME}",
"terminationGracePeriodSeconds": 75,
"containers": [
{
"name": "${APPLICATION_NAME}",
"image": "${APPLICATION_NAME}",
"imagePullPolicy": "Always",
+ "resources": {
+ "limits": {
+ "memory": "${MEMORY_LIMIT}"
+ }
+ },
"volumeMounts": [
{
"name": "eap-keystore-volume",
@@ -558,7 +587,8 @@
"-c",
"/opt/eap/bin/livenessProbe.sh"
]
- }
+ },
+ "initialDelaySeconds": 60
},
"readinessProbe": {
"exec": {
@@ -629,16 +659,16 @@
"value": "${DB_TX_ISOLATION}"
},
{
- "name": "OPENSHIFT_KUBE_PING_LABELS",
- "value": "application=${APPLICATION_NAME}"
+ "name": "JGROUPS_PING_PROTOCOL",
+ "value": "openshift.DNS_PING"
+ },
+ {
+ "name": "OPENSHIFT_DNS_PING_SERVICE_NAME",
+ "value": "${APPLICATION_NAME}-ping"
},
{
- "name": "OPENSHIFT_KUBE_PING_NAMESPACE",
- "valueFrom": {
- "fieldRef": {
- "fieldPath": "metadata.namespace"
- }
- }
+ "name": "OPENSHIFT_DNS_PING_SERVICE_PORT",
+ "value": "8888"
},
{
"name": "HTTPS_KEYSTORE_DIR",
@@ -819,8 +849,22 @@
"name": "MYSQL_AIO",
"value": "${MYSQL_AIO}"
}
+ ],
+ "volumeMounts": [
+ {
+ "mountPath": "/var/lib/mysql/data",
+ "name": "${APPLICATION_NAME}-data"
+ }
]
}
+ ],
+ "volumes": [
+ {
+ "emptyDir": {
+ "medium": ""
+ },
+ "name": "${APPLICATION_NAME}-data"
+ }
]
}
}
diff --git a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap70-postgresql-persistent-s2i.json b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap70-postgresql-persistent-s2i.json
index a2bc9d3b9..aba0c8c64 100644
--- a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap70-postgresql-persistent-s2i.json
+++ b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap70-postgresql-persistent-s2i.json
@@ -5,7 +5,7 @@
"annotations": {
"iconClass": "icon-eap",
"tags": "eap,javaee,java,jboss",
- "version": "1.4.7",
+ "version": "1.4.8",
"openshift.io/display-name": "JBoss EAP 7.0 + PostgreSQL (Persistent with https)",
"openshift.io/provider-display-name": "Red Hat, Inc.",
"description": "An example EAP 7 application with a PostgreSQL database. For more information about using this template, see https://github.com/jboss-openshift/application-templates.",
@@ -17,9 +17,9 @@
},
"labels": {
"template": "eap70-postgresql-persistent-s2i",
- "xpaas": "1.4.7"
+ "xpaas": "1.4.8"
},
- "message": "A new EAP 7 and PostgreSQL persistent based application with SSL support has been created in your project. The username/password for accessing the PostgreSQL database \"${DB_DATABASE}\" is ${DB_USERNAME}/${DB_PASSWORD}. Please be sure to create the \"${SERVICE_ACCOUNT_NAME}\" service account and the following secrets: \"${HTTPS_SECRET}\" containing the ${HTTPS_KEYSTORE} file used for serving secure content; \"${JGROUPS_ENCRYPT_SECRET}\" containing the ${JGROUPS_ENCRYPT_KEYSTORE} file used for securing JGroups communications.",
+ "message": "A new EAP 7 and PostgreSQL persistent based application with SSL support has been created in your project. The username/password for accessing the PostgreSQL database \"${DB_DATABASE}\" is ${DB_USERNAME}/${DB_PASSWORD}. Please be sure to create the following secrets: \"${HTTPS_SECRET}\" containing the ${HTTPS_KEYSTORE} file used for serving secure content; \"${JGROUPS_ENCRYPT_SECRET}\" containing the ${JGROUPS_ENCRYPT_KEYSTORE} file used for securing JGroups communications.",
"parameters": [
{
"displayName": "Application Name",
@@ -81,7 +81,7 @@
"displayName": "Database Volume Capacity",
"description": "Size of persistent storage for database volume.",
"name": "VOLUME_CAPACITY",
- "value": "512Mi",
+ "value": "1Gi",
"required": true
},
{
@@ -99,13 +99,6 @@
"required": false
},
{
- "displayName": "Service Account Name",
- "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
- },
- {
"displayName": "Server Keystore Secret Name",
"description": "The name of the secret containing the keystore file",
"name": "HTTPS_SECRET",
@@ -279,6 +272,12 @@
"name": "POSTGRESQL_IMAGE_STREAM_TAG",
"value": "9.5",
"required": true
+ },
+ {
+ "description": "Container memory limit",
+ "name": "MEMORY_LIMIT",
+ "value": "1Gi",
+ "required": false
}
],
"objects": [
@@ -357,6 +356,32 @@
}
},
{
+ "kind": "Service",
+ "apiVersion": "v1",
+ "spec": {
+ "clusterIP": "None",
+ "ports": [
+ {
+ "name": "ping",
+ "port": 8888
+ }
+ ],
+ "selector": {
+ "deploymentConfig": "${APPLICATION_NAME}"
+ }
+ },
+ "metadata": {
+ "name": "${APPLICATION_NAME}-ping",
+ "labels": {
+ "application": "${APPLICATION_NAME}"
+ },
+ "annotations": {
+ "service.alpha.kubernetes.io/tolerate-unready-endpoints": "true",
+ "description": "The JGroups ping port for clustering."
+ }
+ }
+ },
+ {
"kind": "Route",
"apiVersion": "v1",
"id": "${APPLICATION_NAME}-http",
@@ -444,7 +469,7 @@
"from": {
"kind": "ImageStreamTag",
"namespace": "${IMAGE_STREAM_NAMESPACE}",
- "name": "jboss-eap70-openshift:1.6"
+ "name": "jboss-eap70-openshift:1.7"
}
}
},
@@ -521,13 +546,17 @@
}
},
"spec": {
- "serviceAccountName": "${SERVICE_ACCOUNT_NAME}",
"terminationGracePeriodSeconds": 75,
"containers": [
{
"name": "${APPLICATION_NAME}",
"image": "${APPLICATION_NAME}",
"imagePullPolicy": "Always",
+ "resources": {
+ "limits": {
+ "memory": "${MEMORY_LIMIT}"
+ }
+ },
"volumeMounts": [
{
"name": "eap-keystore-volume",
@@ -547,7 +576,8 @@
"-c",
"/opt/eap/bin/livenessProbe.sh"
]
- }
+ },
+ "initialDelaySeconds": 60
},
"readinessProbe": {
"exec": {
@@ -618,16 +648,16 @@
"value": "${DB_TX_ISOLATION}"
},
{
- "name": "OPENSHIFT_KUBE_PING_LABELS",
- "value": "application=${APPLICATION_NAME}"
+ "name": "JGROUPS_PING_PROTOCOL",
+ "value": "openshift.DNS_PING"
+ },
+ {
+ "name": "OPENSHIFT_DNS_PING_SERVICE_NAME",
+ "value": "${APPLICATION_NAME}-ping"
},
{
- "name": "OPENSHIFT_KUBE_PING_NAMESPACE",
- "valueFrom": {
- "fieldRef": {
- "fieldPath": "metadata.namespace"
- }
- }
+ "name": "OPENSHIFT_DNS_PING_SERVICE_PORT",
+ "value": "8888"
},
{
"name": "HTTPS_KEYSTORE_DIR",
diff --git a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap70-postgresql-s2i.json b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap70-postgresql-s2i.json
index 66b0c737d..bf7c6cf89 100644
--- a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap70-postgresql-s2i.json
+++ b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap70-postgresql-s2i.json
@@ -5,7 +5,7 @@
"annotations": {
"iconClass": "icon-eap",
"tags": "eap,javaee,java,jboss,hidden",
- "version": "1.4.7",
+ "version": "1.4.8",
"openshift.io/display-name": "JBoss EAP 7.0 + PostgreSQL (Ephemeral with https)",
"openshift.io/provider-display-name": "Red Hat, Inc.",
"description": "An example EAP 7 application with a PostgreSQL database. For more information about using this template, see https://github.com/jboss-openshift/application-templates.",
@@ -17,9 +17,9 @@
},
"labels": {
"template": "eap70-postgresql-s2i",
- "xpaas": "1.4.7"
+ "xpaas": "1.4.8"
},
- "message": "A new EAP 7 and PostgreSQL based application with SSL support has been created in your project. The username/password for accessing the PostgreSQL database \"${DB_DATABASE}\" is ${DB_USERNAME}/${DB_PASSWORD}. Please be sure to create the \"${SERVICE_ACCOUNT_NAME}\" service account and the following secrets: \"${HTTPS_SECRET}\" containing the ${HTTPS_KEYSTORE} file used for serving secure content; \"${JGROUPS_ENCRYPT_SECRET}\" containing the ${JGROUPS_ENCRYPT_KEYSTORE} file used for securing JGroups communications.",
+ "message": "A new EAP 7 and PostgreSQL based application with SSL support has been created in your project. The username/password for accessing the PostgreSQL database \"${DB_DATABASE}\" is ${DB_USERNAME}/${DB_PASSWORD}. Please be sure to create the following secrets: \"${HTTPS_SECRET}\" containing the ${HTTPS_KEYSTORE} file used for serving secure content; \"${JGROUPS_ENCRYPT_SECRET}\" containing the ${JGROUPS_ENCRYPT_KEYSTORE} file used for securing JGroups communications.",
"parameters": [
{
"displayName": "Application Name",
@@ -92,13 +92,6 @@
"required": false
},
{
- "displayName": "Service Account Name",
- "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
- },
- {
"displayName": "Server Keystore Secret Name",
"description": "The name of the secret containing the keystore file",
"name": "HTTPS_SECRET",
@@ -272,6 +265,12 @@
"name": "POSTGRESQL_IMAGE_STREAM_TAG",
"value": "9.5",
"required": true
+ },
+ {
+ "description": "Container memory limit",
+ "name": "MEMORY_LIMIT",
+ "value": "1Gi",
+ "required": false
}
],
"objects": [
@@ -350,6 +349,32 @@
}
},
{
+ "kind": "Service",
+ "apiVersion": "v1",
+ "spec": {
+ "clusterIP": "None",
+ "ports": [
+ {
+ "name": "ping",
+ "port": 8888
+ }
+ ],
+ "selector": {
+ "deploymentConfig": "${APPLICATION_NAME}"
+ }
+ },
+ "metadata": {
+ "name": "${APPLICATION_NAME}-ping",
+ "labels": {
+ "application": "${APPLICATION_NAME}"
+ },
+ "annotations": {
+ "service.alpha.kubernetes.io/tolerate-unready-endpoints": "true",
+ "description": "The JGroups ping port for clustering."
+ }
+ }
+ },
+ {
"kind": "Route",
"apiVersion": "v1",
"id": "${APPLICATION_NAME}-http",
@@ -437,7 +462,7 @@
"from": {
"kind": "ImageStreamTag",
"namespace": "${IMAGE_STREAM_NAMESPACE}",
- "name": "jboss-eap70-openshift:1.6"
+ "name": "jboss-eap70-openshift:1.7"
}
}
},
@@ -514,13 +539,17 @@
}
},
"spec": {
- "serviceAccountName": "${SERVICE_ACCOUNT_NAME}",
"terminationGracePeriodSeconds": 75,
"containers": [
{
"name": "${APPLICATION_NAME}",
"image": "${APPLICATION_NAME}",
"imagePullPolicy": "Always",
+ "resources": {
+ "limits": {
+ "memory": "${MEMORY_LIMIT}"
+ }
+ },
"volumeMounts": [
{
"name": "eap-keystore-volume",
@@ -540,7 +569,8 @@
"-c",
"/opt/eap/bin/livenessProbe.sh"
]
- }
+ },
+ "initialDelaySeconds": 60
},
"readinessProbe": {
"exec": {
@@ -611,16 +641,16 @@
"value": "${DB_TX_ISOLATION}"
},
{
- "name": "OPENSHIFT_KUBE_PING_LABELS",
- "value": "application=${APPLICATION_NAME}"
+ "name": "JGROUPS_PING_PROTOCOL",
+ "value": "openshift.DNS_PING"
+ },
+ {
+ "name": "OPENSHIFT_DNS_PING_SERVICE_NAME",
+ "value": "${APPLICATION_NAME}-ping"
},
{
- "name": "OPENSHIFT_KUBE_PING_NAMESPACE",
- "valueFrom": {
- "fieldRef": {
- "fieldPath": "metadata.namespace"
- }
- }
+ "name": "OPENSHIFT_DNS_PING_SERVICE_PORT",
+ "value": "8888"
},
{
"name": "HTTPS_KEYSTORE_DIR",
@@ -793,8 +823,22 @@
"name": "POSTGRESQL_SHARED_BUFFERS",
"value": "${POSTGRESQL_SHARED_BUFFERS}"
}
+ ],
+ "volumeMounts": [
+ {
+ "mountPath": "/var/lib/pgsql/data",
+ "name": "${APPLICATION_NAME}-data"
+ }
]
}
+ ],
+ "volumes": [
+ {
+ "emptyDir": {
+ "medium": ""
+ },
+ "name": "${APPLICATION_NAME}-data"
+ }
]
}
}
diff --git a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap70-sso-s2i.json b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap70-sso-s2i.json
index 2201ff7f3..3601e2354 100644
--- a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap70-sso-s2i.json
+++ b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap70-sso-s2i.json
@@ -5,7 +5,7 @@
"annotations": {
"iconClass": "icon-eap",
"tags": "eap,javaee,java,jboss,hidden",
- "version": "1.4.7",
+ "version": "1.4.8",
"openshift.io/display-name": "JBoss EAP 7.0 + Single Sign-On (with https)",
"openshift.io/provider-display-name": "Red Hat, Inc.",
"description": "An example EAP 7 Single Sign-On application. For more information about using this template, see https://github.com/jboss-openshift/application-templates.",
@@ -17,9 +17,9 @@
},
"labels": {
"template": "eap70-sso-s2i",
- "xpaas": "1.4.7"
+ "xpaas": "1.4.8"
},
- "message": "A new EAP 7 based application with SSL and SSO support has been created in your project. Please be sure to create the \"${SERVICE_ACCOUNT_NAME}\" service account and the following secrets: \"${HTTPS_SECRET}\" containing the ${HTTPS_KEYSTORE} file used for serving secure content; \"${JGROUPS_ENCRYPT_SECRET}\" containing the ${JGROUPS_ENCRYPT_KEYSTORE} file used for securing JGroups communications.",
+ "message": "A new EAP 7 based application with SSL and SSO support has been created in your project. Please be sure to create the following secrets: \"${HTTPS_SECRET}\" containing the ${HTTPS_KEYSTORE} file used for serving secure content; \"${JGROUPS_ENCRYPT_SECRET}\" containing the ${JGROUPS_ENCRYPT_KEYSTORE} file used for securing JGroups communications.",
"parameters": [
{
"displayName": "Application Name",
@@ -86,13 +86,6 @@
"required": true
},
{
- "displayName": "Service Account Name",
- "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
- },
- {
"displayName": "Server Keystore Secret Name",
"description": "The name of the secret containing the keystore file",
"name": "HTTPS_SECRET",
@@ -333,6 +326,12 @@
"name": "MAVEN_MIRROR_URL",
"value": "",
"required": false
+ },
+ {
+ "description": "Container memory limit",
+ "name": "MEMORY_LIMIT",
+ "value": "1Gi",
+ "required": false
}
],
"objects": [
@@ -385,6 +384,32 @@
}
},
{
+ "kind": "Service",
+ "apiVersion": "v1",
+ "spec": {
+ "clusterIP": "None",
+ "ports": [
+ {
+ "name": "ping",
+ "port": 8888
+ }
+ ],
+ "selector": {
+ "deploymentConfig": "${APPLICATION_NAME}"
+ }
+ },
+ "metadata": {
+ "name": "${APPLICATION_NAME}-ping",
+ "labels": {
+ "application": "${APPLICATION_NAME}"
+ },
+ "annotations": {
+ "service.alpha.kubernetes.io/tolerate-unready-endpoints": "true",
+ "description": "The JGroups ping port for clustering."
+ }
+ }
+ },
+ {
"kind": "Route",
"apiVersion": "v1",
"id": "${APPLICATION_NAME}-http",
@@ -462,7 +487,7 @@
"from": {
"kind": "ImageStreamTag",
"namespace": "${IMAGE_STREAM_NAMESPACE}",
- "name": "jboss-eap70-openshift:1.6"
+ "name": "jboss-eap70-openshift:1.7"
},
"env": [
{
@@ -553,13 +578,17 @@
}
},
"spec": {
- "serviceAccountName": "${SERVICE_ACCOUNT_NAME}",
"terminationGracePeriodSeconds": 75,
"containers": [
{
"name": "${APPLICATION_NAME}",
"image": "${APPLICATION_NAME}",
"imagePullPolicy": "Always",
+ "resources": {
+ "limits": {
+ "memory": "${MEMORY_LIMIT}"
+ }
+ },
"volumeMounts": [
{
"name": "sso-saml-keystore-volume",
@@ -589,7 +618,8 @@
"-c",
"/opt/eap/bin/livenessProbe.sh"
]
- }
+ },
+ "initialDelaySeconds": 60
},
"readinessProbe": {
"exec": {
@@ -624,16 +654,16 @@
],
"env": [
{
- "name": "OPENSHIFT_KUBE_PING_LABELS",
- "value": "application=${APPLICATION_NAME}"
+ "name": "JGROUPS_PING_PROTOCOL",
+ "value": "openshift.DNS_PING"
+ },
+ {
+ "name": "OPENSHIFT_DNS_PING_SERVICE_NAME",
+ "value": "${APPLICATION_NAME}-ping"
},
{
- "name": "OPENSHIFT_KUBE_PING_NAMESPACE",
- "valueFrom": {
- "fieldRef": {
- "fieldPath": "metadata.namespace"
- }
- }
+ "name": "OPENSHIFT_DNS_PING_SERVICE_PORT",
+ "value": "8888"
},
{
"name": "HOSTNAME_HTTP",
diff --git a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap70-third-party-db-s2i.json b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap70-third-party-db-s2i.json
index 3ca69f6c7..08b2717be 100644
--- a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap70-third-party-db-s2i.json
+++ b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap70-third-party-db-s2i.json
@@ -5,7 +5,7 @@
"annotations": {
"iconClass": "icon-eap",
"tags": "eap,javaee,java,jboss,hidden",
- "version": "1.4.7",
+ "version": "1.4.8",
"openshift.io/display-name": "JBoss EAP 7.0 (with https, DB drivers)",
"openshift.io/provider-display-name": "Red Hat, Inc.",
"description": "An example EAP 7 DB application. For more information about using this template, see https://github.com/jboss-openshift/application-templates.",
@@ -17,9 +17,9 @@
},
"labels": {
"template": "eap70-third-party-db-s2i",
- "xpaas": "1.4.7"
+ "xpaas": "1.4.8"
},
- "message": "A new EAP 7 based application with SSL support has been created in your project. Please be sure to create the \"${SERVICE_ACCOUNT_NAME}\" service account and the following secrets:\"${CONFIGURATION_NAME}\" containing the datasource configuration details required by the deployed application(s); \"${HTTPS_SECRET}\" containing the ${HTTPS_KEYSTORE} file used for serving secure content; \"${JGROUPS_ENCRYPT_SECRET}\" containing the ${JGROUPS_ENCRYPT_KEYSTORE} file used for securing JGroups communications.",
+ "message": "A new EAP 7 based application with SSL support has been created in your project. Please be sure to create the following secrets:\"${CONFIGURATION_NAME}\" containing the datasource configuration details required by the deployed application(s); \"${HTTPS_SECRET}\" containing the ${HTTPS_KEYSTORE} file used for serving secure content; \"${JGROUPS_ENCRYPT_SECRET}\" containing the ${JGROUPS_ENCRYPT_KEYSTORE} file used for securing JGroups communications.",
"parameters": [
{
"displayName": "Application Name",
@@ -72,7 +72,7 @@
},
{
"displayName": "Drivers ImageStreamTag",
- "description": "ImageStreamTag definition for the image containing the drivers and configuration, e.g. jboss-datavirt63-openshift:1.0-driver",
+ "description": "ImageStreamTag definition for the image containing the drivers and configuration, e.g. jboss-datavirt63-driver-openshift:1.1",
"name": "EXTENSIONS_IMAGE",
"value": "jboss-datavirt63-driver-openshift:1.1",
"required": true
@@ -106,13 +106,6 @@
"required": false
},
{
- "displayName": "Service Account Name",
- "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
- },
- {
"displayName": "Server Keystore Secret Name",
"description": "The name of the secret containing the keystore file",
"name": "HTTPS_SECRET",
@@ -233,6 +226,12 @@
"name": "ARTIFACT_DIR",
"value": "",
"required": false
+ },
+ {
+ "description": "Container memory limit",
+ "name": "MEMORY_LIMIT",
+ "value": "1Gi",
+ "required": false
}
],
"objects": [
@@ -285,6 +284,32 @@
}
},
{
+ "kind": "Service",
+ "apiVersion": "v1",
+ "spec": {
+ "clusterIP": "None",
+ "ports": [
+ {
+ "name": "ping",
+ "port": 8888
+ }
+ ],
+ "selector": {
+ "deploymentConfig": "${APPLICATION_NAME}"
+ }
+ },
+ "metadata": {
+ "name": "${APPLICATION_NAME}-ping",
+ "labels": {
+ "application": "${APPLICATION_NAME}"
+ },
+ "annotations": {
+ "service.alpha.kubernetes.io/tolerate-unready-endpoints": "true",
+ "description": "The JGroups ping port for clustering."
+ }
+ }
+ },
+ {
"kind": "Route",
"apiVersion": "v1",
"id": "${APPLICATION_NAME}-http",
@@ -391,7 +416,7 @@
"from": {
"kind": "ImageStreamTag",
"namespace": "${IMAGE_STREAM_NAMESPACE}",
- "name": "jboss-eap70-openshift:1.6"
+ "name": "jboss-eap70-openshift:1.7"
}
}
},
@@ -478,13 +503,17 @@
}
},
"spec": {
- "serviceAccountName": "${SERVICE_ACCOUNT_NAME}",
"terminationGracePeriodSeconds": 75,
"containers": [
{
"name": "${APPLICATION_NAME}",
"image": "${APPLICATION_NAME}",
"imagePullPolicy": "Always",
+ "resources": {
+ "limits": {
+ "memory": "${MEMORY_LIMIT}"
+ }
+ },
"volumeMounts": [
{
"name": "configuration",
@@ -509,7 +538,8 @@
"-c",
"/opt/eap/bin/livenessProbe.sh"
]
- }
+ },
+ "initialDelaySeconds": 60
},
"readinessProbe": {
"exec": {
@@ -544,16 +574,16 @@
],
"env": [
{
- "name": "OPENSHIFT_KUBE_PING_LABELS",
- "value": "application=${APPLICATION_NAME}"
+ "name": "JGROUPS_PING_PROTOCOL",
+ "value": "openshift.DNS_PING"
+ },
+ {
+ "name": "OPENSHIFT_DNS_PING_SERVICE_NAME",
+ "value": "${APPLICATION_NAME}-ping"
},
{
- "name": "OPENSHIFT_KUBE_PING_NAMESPACE",
- "valueFrom": {
- "fieldRef": {
- "fieldPath": "metadata.namespace"
- }
- }
+ "name": "OPENSHIFT_DNS_PING_SERVICE_PORT",
+ "value": "8888"
},
{
"name": "ENV_FILES",
diff --git a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap70-tx-recovery-s2i.json b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap70-tx-recovery-s2i.json
new file mode 100644
index 000000000..4edfb1336
--- /dev/null
+++ b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap70-tx-recovery-s2i.json
@@ -0,0 +1,605 @@
+{
+ "kind": "Template",
+ "apiVersion": "v1",
+ "metadata": {
+ "annotations": {
+ "iconClass": "icon-eap",
+ "tags": "eap,javaee,java,jboss",
+ "version": "1.4.8",
+ "openshift.io/display-name": "JBoss EAP 7.0 (tx recovery)",
+ "openshift.io/provider-display-name": "Red Hat, Inc.",
+ "description": "An example EAP 7 application. For more information about using this template, see https://github.com/jboss-openshift/application-templates.",
+ "template.openshift.io/long-description": "This template defines resources needed to develop Red Hat Enterprise Application Server 7.0 based application, including a build configuration, application deployment configuration and insecure communication using http. The template also demonstrates how to enable automated transaction recovery on scale down of application pods. Automated transaction recovery is currently Technology Preview.",
+ "template.openshift.io/documentation-url": "https://access.redhat.com/documentation/en/red-hat-jboss-enterprise-application-platform/",
+ "template.openshift.io/support-url": "https://access.redhat.com"
+ },
+ "name": "eap70-tx-recovery-s2i"
+ },
+ "labels": {
+ "template": "eap70-tx-recovery-s2i",
+ "xpaas": "1.4.8"
+ },
+ "message": "A new EAP 7 based application has been created in your project.",
+ "parameters": [
+ {
+ "displayName": "Application Name",
+ "description": "The name for the application.",
+ "name": "APPLICATION_NAME",
+ "value": "eap-app",
+ "required": true
+ },
+ {
+ "displayName": "Custom http Route Hostname",
+ "description": "Custom hostname for http service route. Leave blank for default hostname, e.g.: <application-name>-<project>.<default-domain-suffix>",
+ "name": "HOSTNAME_HTTP",
+ "value": "",
+ "required": false
+ },
+ {
+ "displayName": "Git Repository URL",
+ "description": "Git source URI for application",
+ "name": "SOURCE_REPOSITORY_URL",
+ "value": "https://github.com/jboss-developer/jboss-eap-quickstarts",
+ "required": true
+ },
+ {
+ "displayName": "Git Reference",
+ "description": "Git branch/tag reference",
+ "name": "SOURCE_REPOSITORY_REF",
+ "value": "7.0.0.GA",
+ "required": false
+ },
+ {
+ "displayName": "Context Directory",
+ "description": "Path within Git project to build; empty for root project directory.",
+ "name": "CONTEXT_DIR",
+ "value": "kitchensink",
+ "required": false
+ },
+ {
+ "displayName": "Queues",
+ "description": "Queue names",
+ "name": "MQ_QUEUES",
+ "value": "",
+ "required": false
+ },
+ {
+ "displayName": "Topics",
+ "description": "Topic names",
+ "name": "MQ_TOPICS",
+ "value": "",
+ "required": false
+ },
+ {
+ "displayName": "A-MQ cluster password",
+ "description": "A-MQ cluster admin password",
+ "name": "MQ_CLUSTER_PASSWORD",
+ "from": "[a-zA-Z0-9]{8}",
+ "generate": "expression",
+ "required": true
+ },
+ {
+ "displayName": "Github Webhook Secret",
+ "description": "GitHub trigger secret",
+ "name": "GITHUB_WEBHOOK_SECRET",
+ "from": "[a-zA-Z0-9]{8}",
+ "generate": "expression",
+ "required": true
+ },
+ {
+ "displayName": "Generic Webhook Secret",
+ "description": "Generic build trigger secret",
+ "name": "GENERIC_WEBHOOK_SECRET",
+ "from": "[a-zA-Z0-9]{8}",
+ "generate": "expression",
+ "required": true
+ },
+ {
+ "displayName": "ImageStream Namespace",
+ "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
+ },
+ {
+ "displayName": "JGroups Cluster Password",
+ "description": "JGroups cluster password",
+ "name": "JGROUPS_CLUSTER_PASSWORD",
+ "from": "[a-zA-Z0-9]{8}",
+ "generate": "expression",
+ "required": true
+ },
+ {
+ "displayName": "Deploy Exploded Archives",
+ "description": "Controls whether exploded deployment content should be automatically deployed",
+ "name": "AUTO_DEPLOY_EXPLODED",
+ "value": "false",
+ "required": false
+ },
+ {
+ "displayName": "Maven mirror URL",
+ "description": "Maven mirror to use for S2I builds",
+ "name": "MAVEN_MIRROR_URL",
+ "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": "",
+ "required": false
+ },
+ {
+ "description": "Container memory limit",
+ "name": "MEMORY_LIMIT",
+ "value": "1Gi",
+ "required": false
+ },
+ {
+ "displayName": "EAP Volume Size",
+ "description": "Size of the volume used by EAP for persisting data.",
+ "name": "VOLUME_CAPACITY",
+ "value": "1Gi",
+ "required": true
+ },
+ {
+ "displayName": "Split the data directory?",
+ "description": "Split the data directory for each node in a cluster.",
+ "name": "SPLIT_DATA",
+ "value": "true",
+ "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": {
+ "clusterIP": "None",
+ "ports": [
+ {
+ "name": "ping",
+ "port": 8888
+ }
+ ],
+ "selector": {
+ "deploymentConfig": "${APPLICATION_NAME}"
+ }
+ },
+ "metadata": {
+ "name": "${APPLICATION_NAME}-ping",
+ "labels": {
+ "application": "${APPLICATION_NAME}"
+ },
+ "annotations": {
+ "service.alpha.kubernetes.io/tolerate-unready-endpoints": "true",
+ "description": "The JGroups ping port for clustering."
+ }
+ }
+ },
+ {
+ "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": "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": {
+ "env": [
+ {
+ "name": "MAVEN_MIRROR_URL",
+ "value": "${MAVEN_MIRROR_URL}"
+ },
+ {
+ "name": "ARTIFACT_DIR",
+ "value": "${ARTIFACT_DIR}"
+ }
+ ],
+ "forcePull": true,
+ "from": {
+ "kind": "ImageStreamTag",
+ "namespace": "${IMAGE_STREAM_NAMESPACE}",
+ "name": "jboss-eap70-openshift:1.7"
+ }
+ }
+ },
+ "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": {
+ "terminationGracePeriodSeconds": 75,
+ "containers": [
+ {
+ "name": "${APPLICATION_NAME}",
+ "image": "${APPLICATION_NAME}",
+ "imagePullPolicy": "Always",
+ "resources": {
+ "limits": {
+ "memory": "${MEMORY_LIMIT}"
+ }
+ },
+ "livenessProbe": {
+ "exec": {
+ "command": [
+ "/bin/bash",
+ "-c",
+ "/opt/eap/bin/livenessProbe.sh"
+ ]
+ },
+ "initialDelaySeconds": 60
+ },
+ "readinessProbe": {
+ "exec": {
+ "command": [
+ "/bin/bash",
+ "-c",
+ "/opt/eap/bin/readinessProbe.sh"
+ ]
+ }
+ },
+ "volumeMounts": [
+ {
+ "mountPath": "/opt/eap/standalone/partitioned_data",
+ "name": "${APPLICATION_NAME}-eap-pvol"
+ }
+ ],
+ "ports": [
+ {
+ "name": "jolokia",
+ "containerPort": 8778,
+ "protocol": "TCP"
+ },
+ {
+ "name": "http",
+ "containerPort": 8080,
+ "protocol": "TCP"
+ },
+ {
+ "name": "ping",
+ "containerPort": 8888,
+ "protocol": "TCP"
+ }
+ ],
+ "env": [
+ {
+ "name": "JGROUPS_PING_PROTOCOL",
+ "value": "openshift.DNS_PING"
+ },
+ {
+ "name": "OPENSHIFT_DNS_PING_SERVICE_NAME",
+ "value": "${APPLICATION_NAME}-ping"
+ },
+ {
+ "name": "OPENSHIFT_DNS_PING_SERVICE_PORT",
+ "value": "8888"
+ },
+ {
+ "name": "MQ_CLUSTER_PASSWORD",
+ "value": "${MQ_CLUSTER_PASSWORD}"
+ },
+ {
+ "name": "MQ_QUEUES",
+ "value": "${MQ_QUEUES}"
+ },
+ {
+ "name": "MQ_TOPICS",
+ "value": "${MQ_TOPICS}"
+ },
+ {
+ "name": "JGROUPS_CLUSTER_PASSWORD",
+ "value": "${JGROUPS_CLUSTER_PASSWORD}"
+ },
+ {
+ "name": "AUTO_DEPLOY_EXPLODED",
+ "value": "${AUTO_DEPLOY_EXPLODED}"
+ },
+ {
+ "name": "SPLIT_DATA",
+ "value": "${SPLIT_DATA}"
+ }
+ ]
+ }
+ ],
+ "volumes": [
+ {
+ "name": "${APPLICATION_NAME}-eap-pvol",
+ "persistentVolumeClaim": {
+ "claimName": "${APPLICATION_NAME}-eap-claim"
+ }
+ }
+ ]
+ }
+ }
+ }
+ },
+ {
+ "kind": "DeploymentConfig",
+ "apiVersion": "v1",
+ "metadata": {
+ "name": "${APPLICATION_NAME}-migration",
+ "labels": {
+ "application": "${APPLICATION_NAME}"
+ }
+ },
+ "spec": {
+ "strategy": {
+ "type": "Recreate"
+ },
+ "triggers": [
+ {
+ "type": "ImageChange",
+ "imageChangeParams": {
+ "automatic": true,
+ "containerNames": [
+ "${APPLICATION_NAME}-migration"
+ ],
+ "from": {
+ "kind": "ImageStreamTag",
+ "name": "${APPLICATION_NAME}:latest"
+ }
+ }
+ },
+ {
+ "type": "ConfigChange"
+ }
+ ],
+ "replicas": 1,
+ "selector": {
+ "deploymentConfig": "${APPLICATION_NAME}-migration"
+ },
+ "template": {
+ "metadata": {
+ "name": "${APPLICATION_NAME}-migration",
+ "labels": {
+ "deploymentConfig": "${APPLICATION_NAME}-migration",
+ "application": "${APPLICATION_NAME}"
+ }
+ },
+ "spec": {
+ "terminationGracePeriodSeconds": 75,
+ "containers": [
+ {
+ "name": "${APPLICATION_NAME}-migration",
+ "image": "${APPLICATION_NAME}",
+ "command": [
+ "/opt/eap/bin/openshift-migrate.sh"
+ ],
+ "imagePullPolicy": "Always",
+ "resources": {
+ "limits": {
+ "memory": "${MEMORY_LIMIT}"
+ }
+ },
+ "volumeMounts": [
+ {
+ "mountPath": "/opt/eap/standalone/partitioned_data",
+ "name": "${APPLICATION_NAME}-eap-pvol"
+ }
+ ],
+ "ports": [
+ {
+ "name": "jolokia",
+ "containerPort": 8778,
+ "protocol": "TCP"
+ },
+ {
+ "name": "http",
+ "containerPort": 8080,
+ "protocol": "TCP"
+ },
+ {
+ "name": "ping",
+ "containerPort": 8888,
+ "protocol": "TCP"
+ }
+ ],
+ "env": [
+ {
+ "name": "JGROUPS_PING_PROTOCOL",
+ "value": "openshift.DNS_PING"
+ },
+ {
+ "name": "OPENSHIFT_DNS_PING_SERVICE_NAME",
+ "value": "${APPLICATION_NAME}-ping"
+ },
+ {
+ "name": "OPENSHIFT_DNS_PING_SERVICE_PORT",
+ "value": "8888"
+ },
+ {
+ "name": "MQ_CLUSTER_PASSWORD",
+ "value": "${MQ_CLUSTER_PASSWORD}"
+ },
+ {
+ "name": "MQ_QUEUES",
+ "value": "${MQ_QUEUES}"
+ },
+ {
+ "name": "MQ_TOPICS",
+ "value": "${MQ_TOPICS}"
+ },
+ {
+ "name": "JGROUPS_CLUSTER_PASSWORD",
+ "value": "${JGROUPS_CLUSTER_PASSWORD}"
+ },
+ {
+ "name": "AUTO_DEPLOY_EXPLODED",
+ "value": "${AUTO_DEPLOY_EXPLODED}"
+ },
+ {
+ "name": "SPLIT_DATA",
+ "value": "${SPLIT_DATA}"
+ }
+ ]
+ }
+ ],
+ "volumes": [
+ {
+ "name": "${APPLICATION_NAME}-eap-pvol",
+ "persistentVolumeClaim": {
+ "claimName": "${APPLICATION_NAME}-eap-claim"
+ }
+ }
+ ]
+ }
+ }
+ }
+ },
+ {
+ "apiVersion": "v1",
+ "kind": "PersistentVolumeClaim",
+ "metadata": {
+ "name": "${APPLICATION_NAME}-eap-claim",
+ "labels": {
+ "application": "${APPLICATION_NAME}"
+ }
+ },
+ "spec": {
+ "accessModes": [
+ "ReadWriteMany"
+ ],
+ "resources": {
+ "requests": {
+ "storage": "${VOLUME_CAPACITY}"
+ }
+ }
+ }
+ }
+ ]
+}
diff --git a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap71-amq-persistent-s2i.json b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap71-amq-persistent-s2i.json
index dbc1a8013..d5e785f69 100644
--- a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap71-amq-persistent-s2i.json
+++ b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap71-amq-persistent-s2i.json
@@ -4,8 +4,8 @@
"metadata": {
"annotations": {
"iconClass": "icon-eap",
- "tags": "eap,javaee,java,jboss,hidden",
- "version": "1.4.7",
+ "tags": "eap,javaee,java,jboss",
+ "version": "1.4.8",
"openshift.io/display-name": "JBoss EAP 7.1 + A-MQ (with https)",
"openshift.io/provider-display-name": "Red Hat, Inc.",
"description": "An example EAP 7 A-MQ application. For more information about using this template, see https://github.com/jboss-openshift/application-templates.",
@@ -17,9 +17,9 @@
},
"labels": {
"template": "eap71-amq-persistent-s2i",
- "xpaas": "1.4.7"
+ "xpaas": "1.4.8"
},
- "message": "A new EAP 7 and A-MQ persistent based application with SSL support has been created in your project. The username/password for accessing the A-MQ service is ${MQ_USERNAME}/${MQ_PASSWORD}. Please be sure to create the \"${SERVICE_ACCOUNT_NAME}\" service account and the following secrets: \"${HTTPS_SECRET}\" containing the ${HTTPS_KEYSTORE} file used for serving secure content; \"${JGROUPS_ENCRYPT_SECRET}\" containing the ${JGROUPS_ENCRYPT_KEYSTORE} file used for securing JGroups communications.",
+ "message": "A new EAP 7 and A-MQ persistent based application with SSL support has been created in your project. The username/password for accessing the A-MQ service is ${MQ_USERNAME}/${MQ_PASSWORD}. Please be sure to create the following secrets: \"${HTTPS_SECRET}\" containing the ${HTTPS_KEYSTORE} file used for serving secure content; \"${JGROUPS_ENCRYPT_SECRET}\" containing the ${JGROUPS_ENCRYPT_KEYSTORE} file used for securing JGroups communications.",
"parameters": [
{
"displayName": "Application Name",
@@ -67,7 +67,7 @@
"displayName": "A-MQ Volume Size",
"description": "Size of the volume used by A-MQ for persisting messages.",
"name": "VOLUME_CAPACITY",
- "value": "512Mi",
+ "value": "1Gi",
"required": true
},
{
@@ -113,13 +113,6 @@
"required": false
},
{
- "displayName": "Service Account Name",
- "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
- },
- {
"displayName": "Server Keystore Secret Name",
"description": "The name of the secret containing the keystore file",
"name": "HTTPS_SECRET",
@@ -174,7 +167,7 @@
"displayName": "A-MQ Mesh Discovery Type",
"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",
+ "value": "dns",
"required": false
},
{
@@ -262,6 +255,12 @@
"name": "ARTIFACT_DIR",
"value": "",
"required": false
+ },
+ {
+ "description": "Container memory limit",
+ "name": "MEMORY_LIMIT",
+ "value": "1Gi",
+ "required": false
}
],
"objects": [
@@ -319,6 +318,32 @@
"kind": "Service",
"apiVersion": "v1",
"spec": {
+ "clusterIP": "None",
+ "ports": [
+ {
+ "name": "ping",
+ "port": 8888
+ }
+ ],
+ "selector": {
+ "deploymentConfig": "${APPLICATION_NAME}"
+ }
+ },
+ "metadata": {
+ "name": "${APPLICATION_NAME}-ping",
+ "labels": {
+ "application": "${APPLICATION_NAME}"
+ },
+ "annotations": {
+ "service.alpha.kubernetes.io/tolerate-unready-endpoints": "true",
+ "description": "The JGroups ping port for clustering."
+ }
+ }
+ },
+ {
+ "kind": "Service",
+ "apiVersion": "v1",
+ "spec": {
"ports": [
{
"port": 61616,
@@ -340,6 +365,32 @@
}
},
{
+ "kind": "Service",
+ "apiVersion": "v1",
+ "spec": {
+ "clusterIP": "None",
+ "ports": [
+ {
+ "name": "mesh",
+ "port": 61616
+ }
+ ],
+ "selector": {
+ "deploymentConfig": "${APPLICATION_NAME}-amq"
+ }
+ },
+ "metadata": {
+ "name": "${APPLICATION_NAME}-amq-mesh",
+ "labels": {
+ "application": "${APPLICATION_NAME}"
+ },
+ "annotations": {
+ "service.alpha.kubernetes.io/tolerate-unready-endpoints": "true",
+ "description": "Supports node discovery for mesh formation."
+ }
+ }
+ },
+ {
"kind": "Route",
"apiVersion": "v1",
"id": "${APPLICATION_NAME}-http",
@@ -427,7 +478,7 @@
"from": {
"kind": "ImageStreamTag",
"namespace": "${IMAGE_STREAM_NAMESPACE}",
- "name": "jboss-eap71-openshift:TP"
+ "name": "jboss-eap71-openshift:1.1"
}
}
},
@@ -504,13 +555,17 @@
}
},
"spec": {
- "serviceAccountName": "${SERVICE_ACCOUNT_NAME}",
"terminationGracePeriodSeconds": 60,
"containers": [
{
"name": "${APPLICATION_NAME}",
"image": "${APPLICATION_NAME}",
"imagePullPolicy": "Always",
+ "resources": {
+ "limits": {
+ "memory": "${MEMORY_LIMIT}"
+ }
+ },
"volumeMounts": [
{
"name": "eap-keystore-volume",
@@ -530,7 +585,8 @@
"-c",
"/opt/eap/bin/livenessProbe.sh"
]
- }
+ },
+ "initialDelaySeconds": 60
},
"readinessProbe": {
"exec": {
@@ -597,16 +653,16 @@
"value": "${MQ_SERIALIZABLE_PACKAGES}"
},
{
- "name": "OPENSHIFT_KUBE_PING_LABELS",
- "value": "application=${APPLICATION_NAME}"
+ "name": "JGROUPS_PING_PROTOCOL",
+ "value": "openshift.DNS_PING"
},
{
- "name": "OPENSHIFT_KUBE_PING_NAMESPACE",
- "valueFrom": {
- "fieldRef": {
- "fieldPath": "metadata.namespace"
- }
- }
+ "name": "OPENSHIFT_DNS_PING_SERVICE_NAME",
+ "value": "${APPLICATION_NAME}-ping"
+ },
+ {
+ "name": "OPENSHIFT_DNS_PING_SERVICE_PORT",
+ "value": "8888"
},
{
"name": "HTTPS_KEYSTORE_DIR",
@@ -704,7 +760,7 @@
"from": {
"kind": "ImageStreamTag",
"namespace": "${IMAGE_STREAM_NAMESPACE}",
- "name": "jboss-amq-62:1.6"
+ "name": "jboss-amq-62:1.7"
}
}
},
@@ -823,7 +879,7 @@
},
{
"name": "AMQ_MESH_SERVICE_NAME",
- "value": "${APPLICATION_NAME}-amq-tcp"
+ "value": "${APPLICATION_NAME}-amq-mesh"
},
{
"name": "AMQ_MESH_SERVICE_NAMESPACE",
diff --git a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap71-amq-s2i.json b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap71-amq-s2i.json
index 6e330eae9..16d19d540 100644
--- a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap71-amq-s2i.json
+++ b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap71-amq-s2i.json
@@ -4,8 +4,8 @@
"metadata": {
"annotations": {
"iconClass": "icon-eap",
- "tags": "eap,javaee,java,jboss,xpaas,hidden",
- "version": "1.4.7",
+ "tags": "eap,javaee,java,jboss,hidden",
+ "version": "1.4.8",
"openshift.io/display-name": "JBoss EAP 7.1 + A-MQ (with https)",
"openshift.io/provider-display-name": "Red Hat, Inc.",
"description": "An example EAP 7 A-MQ application. For more information about using this template, see https://github.com/jboss-openshift/application-templates.",
@@ -17,9 +17,9 @@
},
"labels": {
"template": "eap71-amq-s2i",
- "xpaas": "1.4.7"
+ "xpaas": "1.4.8"
},
- "message": "A new EAP 7 and A-MQ based application with SSL support has been created in your project. The username/password for accessing the A-MQ service is ${MQ_USERNAME}/${MQ_PASSWORD}. Please be sure to create the \"${SERVICE_ACCOUNT_NAME}\" service account and the following secrets: \"${HTTPS_SECRET}\" containing the ${HTTPS_KEYSTORE} file used for serving secure content; \"${JGROUPS_ENCRYPT_SECRET}\" containing the ${JGROUPS_ENCRYPT_KEYSTORE} file used for securing JGroups communications.",
+ "message": "A new EAP 7 and A-MQ based application with SSL support has been created in your project. The username/password for accessing the A-MQ service is ${MQ_USERNAME}/${MQ_PASSWORD}. Please be sure to create the following secrets: \"${HTTPS_SECRET}\" containing the ${HTTPS_KEYSTORE} file used for serving secure content; \"${JGROUPS_ENCRYPT_SECRET}\" containing the ${JGROUPS_ENCRYPT_KEYSTORE} file used for securing JGroups communications.",
"parameters": [
{
"displayName": "Application Name",
@@ -99,13 +99,6 @@
"required": false
},
{
- "displayName": "Service Account Name",
- "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
- },
- {
"displayName": "Server Keystore Secret Name",
"description": "The name of the secret containing the keystore file",
"name": "HTTPS_SECRET",
@@ -160,7 +153,7 @@
"displayName": "A-MQ Mesh Discovery Type",
"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",
+ "value": "dns",
"required": false
},
{
@@ -248,6 +241,12 @@
"name": "ARTIFACT_DIR",
"value": "",
"required": false
+ },
+ {
+ "description": "Container memory limit",
+ "name": "MEMORY_LIMIT",
+ "value": "1Gi",
+ "required": false
}
],
"objects": [
@@ -305,6 +304,32 @@
"kind": "Service",
"apiVersion": "v1",
"spec": {
+ "clusterIP": "None",
+ "ports": [
+ {
+ "name": "ping",
+ "port": 8888
+ }
+ ],
+ "selector": {
+ "deploymentConfig": "${APPLICATION_NAME}"
+ }
+ },
+ "metadata": {
+ "name": "${APPLICATION_NAME}-ping",
+ "labels": {
+ "application": "${APPLICATION_NAME}"
+ },
+ "annotations": {
+ "service.alpha.kubernetes.io/tolerate-unready-endpoints": "true",
+ "description": "The JGroups ping port for clustering."
+ }
+ }
+ },
+ {
+ "kind": "Service",
+ "apiVersion": "v1",
+ "spec": {
"ports": [
{
"port": 61616,
@@ -326,6 +351,32 @@
}
},
{
+ "kind": "Service",
+ "apiVersion": "v1",
+ "spec": {
+ "clusterIP": "None",
+ "ports": [
+ {
+ "name": "mesh",
+ "port": 61616
+ }
+ ],
+ "selector": {
+ "deploymentConfig": "${APPLICATION_NAME}-amq"
+ }
+ },
+ "metadata": {
+ "name": "${APPLICATION_NAME}-amq-mesh",
+ "labels": {
+ "application": "${APPLICATION_NAME}"
+ },
+ "annotations": {
+ "service.alpha.kubernetes.io/tolerate-unready-endpoints": "true",
+ "description": "Supports node discovery for mesh formation."
+ }
+ }
+ },
+ {
"kind": "Route",
"apiVersion": "v1",
"id": "${APPLICATION_NAME}-http",
@@ -413,7 +464,7 @@
"from": {
"kind": "ImageStreamTag",
"namespace": "${IMAGE_STREAM_NAMESPACE}",
- "name": "jboss-eap71-openshift:TP"
+ "name": "jboss-eap71-openshift:1.1"
}
}
},
@@ -490,13 +541,17 @@
}
},
"spec": {
- "serviceAccountName": "${SERVICE_ACCOUNT_NAME}",
"terminationGracePeriodSeconds": 60,
"containers": [
{
"name": "${APPLICATION_NAME}",
"image": "${APPLICATION_NAME}",
"imagePullPolicy": "Always",
+ "resources": {
+ "limits": {
+ "memory": "${MEMORY_LIMIT}"
+ }
+ },
"volumeMounts": [
{
"name": "eap-keystore-volume",
@@ -516,7 +571,8 @@
"-c",
"/opt/eap/bin/livenessProbe.sh"
]
- }
+ },
+ "initialDelaySeconds": 60
},
"readinessProbe": {
"exec": {
@@ -583,16 +639,16 @@
"value": "${MQ_SERIALIZABLE_PACKAGES}"
},
{
- "name": "OPENSHIFT_KUBE_PING_LABELS",
- "value": "application=${APPLICATION_NAME}"
+ "name": "JGROUPS_PING_PROTOCOL",
+ "value": "openshift.DNS_PING"
},
{
- "name": "OPENSHIFT_KUBE_PING_NAMESPACE",
- "valueFrom": {
- "fieldRef": {
- "fieldPath": "metadata.namespace"
- }
- }
+ "name": "OPENSHIFT_DNS_PING_SERVICE_NAME",
+ "value": "${APPLICATION_NAME}-ping"
+ },
+ {
+ "name": "OPENSHIFT_DNS_PING_SERVICE_PORT",
+ "value": "8888"
},
{
"name": "HTTPS_KEYSTORE_DIR",
@@ -687,7 +743,7 @@
"from": {
"kind": "ImageStreamTag",
"namespace": "${IMAGE_STREAM_NAMESPACE}",
- "name": "jboss-amq-62:1.6"
+ "name": "jboss-amq-62:1.7"
}
}
},
@@ -796,7 +852,7 @@
},
{
"name": "AMQ_MESH_SERVICE_NAME",
- "value": "${APPLICATION_NAME}-amq-tcp"
+ "value": "${APPLICATION_NAME}-amq-mesh"
},
{
"name": "AMQ_MESH_SERVICE_NAMESPACE",
diff --git a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap71-basic-s2i.json b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap71-basic-s2i.json
index 892ec468c..ece7c7310 100644
--- a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap71-basic-s2i.json
+++ b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap71-basic-s2i.json
@@ -4,8 +4,8 @@
"metadata": {
"annotations": {
"iconClass": "icon-eap",
- "tags": "eap,javaee,java,jboss,hidden",
- "version": "1.4.7",
+ "tags": "eap,javaee,java,jboss",
+ "version": "1.4.8",
"openshift.io/display-name": "JBoss EAP 7.1 (no https)",
"openshift.io/provider-display-name": "Red Hat, Inc.",
"description": "An example EAP 7 application. For more information about using this template, see https://github.com/jboss-openshift/application-templates.",
@@ -17,7 +17,7 @@
},
"labels": {
"template": "eap71-basic-s2i",
- "xpaas": "1.4.7"
+ "xpaas": "1.4.8"
},
"message": "A new EAP 7 based application has been created in your project.",
"parameters": [
@@ -128,6 +128,12 @@
"name": "ARTIFACT_DIR",
"value": "",
"required": false
+ },
+ {
+ "description": "Container memory limit",
+ "name": "MEMORY_LIMIT",
+ "value": "1Gi",
+ "required": false
}
],
"objects": [
@@ -156,6 +162,32 @@
}
},
{
+ "kind": "Service",
+ "apiVersion": "v1",
+ "spec": {
+ "clusterIP": "None",
+ "ports": [
+ {
+ "name": "ping",
+ "port": 8888
+ }
+ ],
+ "selector": {
+ "deploymentConfig": "${APPLICATION_NAME}"
+ }
+ },
+ "metadata": {
+ "name": "${APPLICATION_NAME}-ping",
+ "labels": {
+ "application": "${APPLICATION_NAME}"
+ },
+ "annotations": {
+ "service.alpha.kubernetes.io/tolerate-unready-endpoints": "true",
+ "description": "The JGroups ping port for clustering."
+ }
+ }
+ },
+ {
"kind": "Route",
"apiVersion": "v1",
"id": "${APPLICATION_NAME}-http",
@@ -220,7 +252,7 @@
"from": {
"kind": "ImageStreamTag",
"namespace": "${IMAGE_STREAM_NAMESPACE}",
- "name": "jboss-eap71-openshift:TP"
+ "name": "jboss-eap71-openshift:1.1"
}
}
},
@@ -303,6 +335,11 @@
"name": "${APPLICATION_NAME}",
"image": "${APPLICATION_NAME}",
"imagePullPolicy": "Always",
+ "resources": {
+ "limits": {
+ "memory": "${MEMORY_LIMIT}"
+ }
+ },
"livenessProbe": {
"exec": {
"command": [
@@ -310,7 +347,8 @@
"-c",
"/opt/eap/bin/livenessProbe.sh"
]
- }
+ },
+ "initialDelaySeconds": 60
},
"readinessProbe": {
"exec": {
@@ -340,16 +378,16 @@
],
"env": [
{
- "name": "OPENSHIFT_KUBE_PING_LABELS",
- "value": "application=${APPLICATION_NAME}"
+ "name": "JGROUPS_PING_PROTOCOL",
+ "value": "openshift.DNS_PING"
+ },
+ {
+ "name": "OPENSHIFT_DNS_PING_SERVICE_NAME",
+ "value": "${APPLICATION_NAME}-ping"
},
{
- "name": "OPENSHIFT_KUBE_PING_NAMESPACE",
- "valueFrom": {
- "fieldRef": {
- "fieldPath": "metadata.namespace"
- }
- }
+ "name": "OPENSHIFT_DNS_PING_SERVICE_PORT",
+ "value": "8888"
},
{
"name": "MQ_CLUSTER_PASSWORD",
diff --git a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap71-https-s2i.json b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap71-https-s2i.json
index 7426830ec..515e69e83 100644
--- a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap71-https-s2i.json
+++ b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap71-https-s2i.json
@@ -5,7 +5,7 @@
"annotations": {
"iconClass": "icon-eap",
"tags": "eap,javaee,java,jboss,hidden",
- "version": "1.4.7",
+ "version": "1.4.8",
"openshift.io/display-name": "JBoss EAP 7.1 (with https)",
"openshift.io/provider-display-name": "Red Hat, Inc.",
"description": "An example EAP 7 application. For more information about using this template, see https://github.com/jboss-openshift/application-templates.",
@@ -17,9 +17,9 @@
},
"labels": {
"template": "eap71-https-s2i",
- "xpaas": "1.4.7"
+ "xpaas": "1.4.8"
},
- "message": "A new EAP 7 based application with SSL support has been created in your project. Please be sure to create the \"${SERVICE_ACCOUNT_NAME}\" service account and the following secrets: \"${HTTPS_SECRET}\" containing the ${HTTPS_KEYSTORE} file used for serving secure content; \"${JGROUPS_ENCRYPT_SECRET}\" containing the ${JGROUPS_ENCRYPT_KEYSTORE} file used for securing JGroups communications.",
+ "message": "A new EAP 7 based application with SSL support has been created in your project. Please be sure to create the following secrets: \"${HTTPS_SECRET}\" containing the ${HTTPS_KEYSTORE} file used for serving secure content; \"${JGROUPS_ENCRYPT_SECRET}\" containing the ${JGROUPS_ENCRYPT_KEYSTORE} file used for securing JGroups communications.",
"parameters": [
{
"displayName": "Application Name",
@@ -78,13 +78,6 @@
"required": false
},
{
- "displayName": "Service Account Name",
- "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
- },
- {
"displayName": "Server Keystore Secret Name",
"description": "The name of the secret containing the keystore file",
"name": "HTTPS_SECRET",
@@ -205,6 +198,12 @@
"name": "ARTIFACT_DIR",
"value": "",
"required": false
+ },
+ {
+ "description": "Container memory limit",
+ "name": "MEMORY_LIMIT",
+ "value": "1Gi",
+ "required": false
}
],
"objects": [
@@ -257,6 +256,32 @@
}
},
{
+ "kind": "Service",
+ "apiVersion": "v1",
+ "spec": {
+ "clusterIP": "None",
+ "ports": [
+ {
+ "name": "ping",
+ "port": 8888
+ }
+ ],
+ "selector": {
+ "deploymentConfig": "${APPLICATION_NAME}"
+ }
+ },
+ "metadata": {
+ "name": "${APPLICATION_NAME}-ping",
+ "labels": {
+ "application": "${APPLICATION_NAME}"
+ },
+ "annotations": {
+ "service.alpha.kubernetes.io/tolerate-unready-endpoints": "true",
+ "description": "The JGroups ping port for clustering."
+ }
+ }
+ },
+ {
"kind": "Route",
"apiVersion": "v1",
"id": "${APPLICATION_NAME}-http",
@@ -344,7 +369,7 @@
"from": {
"kind": "ImageStreamTag",
"namespace": "${IMAGE_STREAM_NAMESPACE}",
- "name": "jboss-eap71-openshift:TP"
+ "name": "jboss-eap71-openshift:1.1"
}
}
},
@@ -421,13 +446,17 @@
}
},
"spec": {
- "serviceAccountName": "${SERVICE_ACCOUNT_NAME}",
"terminationGracePeriodSeconds": 75,
"containers": [
{
"name": "${APPLICATION_NAME}",
"image": "${APPLICATION_NAME}",
"imagePullPolicy": "Always",
+ "resources": {
+ "limits": {
+ "memory": "${MEMORY_LIMIT}"
+ }
+ },
"volumeMounts": [
{
"name": "eap-keystore-volume",
@@ -447,7 +476,8 @@
"-c",
"/opt/eap/bin/livenessProbe.sh"
]
- }
+ },
+ "initialDelaySeconds": 60
},
"readinessProbe": {
"exec": {
@@ -482,16 +512,16 @@
],
"env": [
{
- "name": "OPENSHIFT_KUBE_PING_LABELS",
- "value": "application=${APPLICATION_NAME}"
+ "name": "JGROUPS_PING_PROTOCOL",
+ "value": "openshift.DNS_PING"
+ },
+ {
+ "name": "OPENSHIFT_DNS_PING_SERVICE_NAME",
+ "value": "${APPLICATION_NAME}-ping"
},
{
- "name": "OPENSHIFT_KUBE_PING_NAMESPACE",
- "valueFrom": {
- "fieldRef": {
- "fieldPath": "metadata.namespace"
- }
- }
+ "name": "OPENSHIFT_DNS_PING_SERVICE_PORT",
+ "value": "8888"
},
{
"name": "HTTPS_KEYSTORE_DIR",
diff --git a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap71-mongodb-persistent-s2i.json b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap71-mongodb-persistent-s2i.json
index fb7f27acf..97ed818d3 100644
--- a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap71-mongodb-persistent-s2i.json
+++ b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap71-mongodb-persistent-s2i.json
@@ -5,7 +5,7 @@
"annotations": {
"iconClass": "icon-eap",
"tags": "eap,javaee,java,jboss,hidden",
- "version": "1.4.7",
+ "version": "1.4.8",
"openshift.io/display-name": "JBoss EAP 7.1 + MongoDB (with https)",
"openshift.io/provider-display-name": "Red Hat, Inc.",
"description": "An example EAP 7 application with a MongoDB database. For more information about using this template, see https://github.com/jboss-openshift/application-templates.",
@@ -17,9 +17,9 @@
},
"labels": {
"template": "eap71-mongodb-persistent-s2i",
- "xpaas": "1.4.7"
+ "xpaas": "1.4.8"
},
- "message": "A new EAP 7 and MongoDB persistent based application with SSL support has been created in your project. The username/password for accessing the MongoDB database \"${DB_DATABASE}\" is ${DB_USERNAME}/${DB_PASSWORD} (Admin password is \"${DB_ADMIN_PASSWORD}\"). Please be sure to create the \"${SERVICE_ACCOUNT_NAME}\" service account and the following secrets: \"${HTTPS_SECRET}\" containing the ${HTTPS_KEYSTORE} file used for serving secure content; \"${JGROUPS_ENCRYPT_SECRET}\" containing the ${JGROUPS_ENCRYPT_KEYSTORE} file used for securing JGroups communications.",
+ "message": "A new EAP 7 and MongoDB persistent based application with SSL support has been created in your project. The username/password for accessing the MongoDB database \"${DB_DATABASE}\" is ${DB_USERNAME}/${DB_PASSWORD} (Admin password is \"${DB_ADMIN_PASSWORD}\"). Please be sure to create the following secrets: \"${HTTPS_SECRET}\" containing the ${HTTPS_KEYSTORE} file used for serving secure content; \"${JGROUPS_ENCRYPT_SECRET}\" containing the ${JGROUPS_ENCRYPT_KEYSTORE} file used for securing JGroups communications.",
"parameters": [
{
"displayName": "Application Name",
@@ -81,7 +81,7 @@
"displayName": "Database Volume Capacity",
"description": "Size of persistent storage for database volume.",
"name": "VOLUME_CAPACITY",
- "value": "512Mi",
+ "value": "1Gi",
"required": true
},
{
@@ -99,13 +99,6 @@
"required": false
},
{
- "displayName": "Service Account Name",
- "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
- },
- {
"displayName": "Server Keystore Secret Name",
"description": "The name of the secret containing the keystore file",
"name": "HTTPS_SECRET",
@@ -293,6 +286,12 @@
"name": "MONGODB_IMAGE_STREAM_TAG",
"value": "3.2",
"required": true
+ },
+ {
+ "description": "Container memory limit",
+ "name": "MEMORY_LIMIT",
+ "value": "1Gi",
+ "required": false
}
],
"objects": [
@@ -371,6 +370,32 @@
}
},
{
+ "kind": "Service",
+ "apiVersion": "v1",
+ "spec": {
+ "clusterIP": "None",
+ "ports": [
+ {
+ "name": "ping",
+ "port": 8888
+ }
+ ],
+ "selector": {
+ "deploymentConfig": "${APPLICATION_NAME}"
+ }
+ },
+ "metadata": {
+ "name": "${APPLICATION_NAME}-ping",
+ "labels": {
+ "application": "${APPLICATION_NAME}"
+ },
+ "annotations": {
+ "service.alpha.kubernetes.io/tolerate-unready-endpoints": "true",
+ "description": "The JGroups ping port for clustering."
+ }
+ }
+ },
+ {
"kind": "Route",
"apiVersion": "v1",
"id": "${APPLICATION_NAME}-http",
@@ -458,7 +483,7 @@
"from": {
"kind": "ImageStreamTag",
"namespace": "${IMAGE_STREAM_NAMESPACE}",
- "name": "jboss-eap71-openshift:TP"
+ "name": "jboss-eap71-openshift:1.1"
}
}
},
@@ -535,13 +560,17 @@
}
},
"spec": {
- "serviceAccountName": "${SERVICE_ACCOUNT_NAME}",
"terminationGracePeriodSeconds": 75,
"containers": [
{
"name": "${APPLICATION_NAME}",
"image": "${APPLICATION_NAME}",
"imagePullPolicy": "Always",
+ "resources": {
+ "limits": {
+ "memory": "${MEMORY_LIMIT}"
+ }
+ },
"volumeMounts": [
{
"name": "eap-keystore-volume",
@@ -561,7 +590,8 @@
"-c",
"/opt/eap/bin/livenessProbe.sh"
]
- }
+ },
+ "initialDelaySeconds": 60
},
"readinessProbe": {
"exec": {
@@ -632,16 +662,16 @@
"value": "${DB_TX_ISOLATION}"
},
{
- "name": "OPENSHIFT_KUBE_PING_LABELS",
- "value": "application=${APPLICATION_NAME}"
+ "name": "JGROUPS_PING_PROTOCOL",
+ "value": "openshift.DNS_PING"
+ },
+ {
+ "name": "OPENSHIFT_DNS_PING_SERVICE_NAME",
+ "value": "${APPLICATION_NAME}-ping"
},
{
- "name": "OPENSHIFT_KUBE_PING_NAMESPACE",
- "valueFrom": {
- "fieldRef": {
- "fieldPath": "metadata.namespace"
- }
- }
+ "name": "OPENSHIFT_DNS_PING_SERVICE_PORT",
+ "value": "8888"
},
{
"name": "HTTPS_KEYSTORE_DIR",
diff --git a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap71-mongodb-s2i.json b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap71-mongodb-s2i.json
index 915c9ba0a..b59ca2b5e 100644
--- a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap71-mongodb-s2i.json
+++ b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap71-mongodb-s2i.json
@@ -5,7 +5,7 @@
"annotations": {
"iconClass": "icon-eap",
"tags": "eap,javaee,java,jboss,hidden",
- "version": "1.4.7",
+ "version": "1.4.8",
"openshift.io/display-name": "JBoss EAP 7.1 + MongoDB (Ephemeral with https)",
"openshift.io/provider-display-name": "Red Hat, Inc.",
"description": "An example EAP 7 application with a MongoDB database. For more information about using this template, see https://github.com/jboss-openshift/application-templates.",
@@ -17,9 +17,9 @@
},
"labels": {
"template": "eap71-mongodb-s2i",
- "xpaas": "1.4.7"
+ "xpaas": "1.4.8"
},
- "message": "A new EAP 7 and MongoDB based application with SSL support has been created in your project. The username/password for accessing the MongoDB database \"${DB_DATABASE}\" is ${DB_USERNAME}/${DB_PASSWORD} (Admin password is \"${DB_ADMIN_PASSWORD}\"). Please be sure to create the \"${SERVICE_ACCOUNT_NAME}\" service account and the following secrets: \"${HTTPS_SECRET}\" containing the ${HTTPS_KEYSTORE} file used for serving secure content; \"${JGROUPS_ENCRYPT_SECRET}\" containing the ${JGROUPS_ENCRYPT_KEYSTORE} file used for securing JGroups communications.",
+ "message": "A new EAP 7 and MongoDB based application with SSL support has been created in your project. The username/password for accessing the MongoDB database \"${DB_DATABASE}\" is ${DB_USERNAME}/${DB_PASSWORD} (Admin password is \"${DB_ADMIN_PASSWORD}\"). Please be sure to create the following secrets: \"${HTTPS_SECRET}\" containing the ${HTTPS_KEYSTORE} file used for serving secure content; \"${JGROUPS_ENCRYPT_SECRET}\" containing the ${JGROUPS_ENCRYPT_KEYSTORE} file used for securing JGroups communications.",
"parameters": [
{
"displayName": "Application Name",
@@ -92,13 +92,6 @@
"required": false
},
{
- "displayName": "Service Account Name",
- "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
- },
- {
"displayName": "Server Keystore Secret Name",
"description": "The name of the secret containing the keystore file",
"name": "HTTPS_SECRET",
@@ -286,6 +279,12 @@
"name": "MONGODB_IMAGE_STREAM_TAG",
"value": "3.2",
"required": true
+ },
+ {
+ "description": "Container memory limit",
+ "name": "MEMORY_LIMIT",
+ "value": "1Gi",
+ "required": false
}
],
"objects": [
@@ -364,6 +363,32 @@
}
},
{
+ "kind": "Service",
+ "apiVersion": "v1",
+ "spec": {
+ "clusterIP": "None",
+ "ports": [
+ {
+ "name": "ping",
+ "port": 8888
+ }
+ ],
+ "selector": {
+ "deploymentConfig": "${APPLICATION_NAME}"
+ }
+ },
+ "metadata": {
+ "name": "${APPLICATION_NAME}-ping",
+ "labels": {
+ "application": "${APPLICATION_NAME}"
+ },
+ "annotations": {
+ "service.alpha.kubernetes.io/tolerate-unready-endpoints": "true",
+ "description": "The JGroups ping port for clustering."
+ }
+ }
+ },
+ {
"kind": "Route",
"apiVersion": "v1",
"id": "${APPLICATION_NAME}-http",
@@ -451,7 +476,7 @@
"from": {
"kind": "ImageStreamTag",
"namespace": "${IMAGE_STREAM_NAMESPACE}",
- "name": "jboss-eap71-openshift:TP"
+ "name": "jboss-eap71-openshift:1.1"
}
}
},
@@ -528,13 +553,17 @@
}
},
"spec": {
- "serviceAccountName": "${SERVICE_ACCOUNT_NAME}",
"terminationGracePeriodSeconds": 75,
"containers": [
{
"name": "${APPLICATION_NAME}",
"image": "${APPLICATION_NAME}",
"imagePullPolicy": "Always",
+ "resources": {
+ "limits": {
+ "memory": "${MEMORY_LIMIT}"
+ }
+ },
"volumeMounts": [
{
"name": "eap-keystore-volume",
@@ -554,7 +583,8 @@
"-c",
"/opt/eap/bin/livenessProbe.sh"
]
- }
+ },
+ "initialDelaySeconds": 60
},
"readinessProbe": {
"exec": {
@@ -625,16 +655,16 @@
"value": "${DB_TX_ISOLATION}"
},
{
- "name": "OPENSHIFT_KUBE_PING_LABELS",
- "value": "application=${APPLICATION_NAME}"
+ "name": "JGROUPS_PING_PROTOCOL",
+ "value": "openshift.DNS_PING"
+ },
+ {
+ "name": "OPENSHIFT_DNS_PING_SERVICE_NAME",
+ "value": "${APPLICATION_NAME}-ping"
},
{
- "name": "OPENSHIFT_KUBE_PING_NAMESPACE",
- "valueFrom": {
- "fieldRef": {
- "fieldPath": "metadata.namespace"
- }
- }
+ "name": "OPENSHIFT_DNS_PING_SERVICE_PORT",
+ "value": "8888"
},
{
"name": "HTTPS_KEYSTORE_DIR",
@@ -803,8 +833,22 @@
"name": "MONGODB_QUIET",
"value": "${MONGODB_QUIET}"
}
+ ],
+ "volumeMounts": [
+ {
+ "mountPath": "/var/lib/mongodb/data",
+ "name": "${APPLICATION_NAME}-data"
+ }
]
}
+ ],
+ "volumes": [
+ {
+ "emptyDir": {
+ "medium": ""
+ },
+ "name": "${APPLICATION_NAME}-data"
+ }
]
}
}
diff --git a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap71-mysql-persistent-s2i.json b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap71-mysql-persistent-s2i.json
index 6af9e5f50..aee9966a5 100644
--- a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap71-mysql-persistent-s2i.json
+++ b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap71-mysql-persistent-s2i.json
@@ -4,8 +4,8 @@
"metadata": {
"annotations": {
"iconClass": "icon-eap",
- "tags": "eap,javaee,java,jboss,hidden",
- "version": "1.4.7",
+ "tags": "eap,javaee,java,jboss",
+ "version": "1.4.8",
"openshift.io/display-name": "JBoss EAP 7.1 + MySQL (with https)",
"openshift.io/provider-display-name": "Red Hat, Inc.",
"description": "An example EAP 7 application with a MySQL database. For more information about using this template, see https://github.com/jboss-openshift/application-templates.",
@@ -17,9 +17,9 @@
},
"labels": {
"template": "eap71-mysql-persistent-s2i",
- "xpaas": "1.4.7"
+ "xpaas": "1.4.8"
},
- "message": "A new EAP 7 and MySQL persistent based application with SSL support has been created in your project. The username/password for accessing the MySQL database \"${DB_DATABASE}\" is ${DB_USERNAME}/${DB_PASSWORD}. Please be sure to create the \"${SERVICE_ACCOUNT_NAME}\" service account and the following secrets: \"${HTTPS_SECRET}\" containing the ${HTTPS_KEYSTORE} file used for serving secure content; \"${JGROUPS_ENCRYPT_SECRET}\" containing the ${JGROUPS_ENCRYPT_KEYSTORE} file used for securing JGroups communications.",
+ "message": "A new EAP 7 and MySQL persistent based application with SSL support has been created in your project. The username/password for accessing the MySQL database \"${DB_DATABASE}\" is ${DB_USERNAME}/${DB_PASSWORD}. Please be sure to create the following secrets: \"${HTTPS_SECRET}\" containing the ${HTTPS_KEYSTORE} file used for serving secure content; \"${JGROUPS_ENCRYPT_SECRET}\" containing the ${JGROUPS_ENCRYPT_KEYSTORE} file used for securing JGroups communications.",
"parameters": [
{
"displayName": "Application Name",
@@ -81,7 +81,7 @@
"displayName": "Database Volume Capacity",
"description": "Size of persistent storage for database volume.",
"name": "VOLUME_CAPACITY",
- "value": "512Mi",
+ "value": "1Gi",
"required": true
},
{
@@ -99,13 +99,6 @@
"required": false
},
{
- "displayName": "Service Account Name",
- "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
- },
- {
"displayName": "Server Keystore Secret Name",
"description": "The name of the secret containing the keystore file",
"name": "HTTPS_SECRET",
@@ -297,6 +290,12 @@
"name": "MYSQL_IMAGE_STREAM_TAG",
"value": "5.7",
"required": true
+ },
+ {
+ "description": "Container memory limit",
+ "name": "MEMORY_LIMIT",
+ "value": "1Gi",
+ "required": false
}
],
"objects": [
@@ -375,6 +374,32 @@
}
},
{
+ "kind": "Service",
+ "apiVersion": "v1",
+ "spec": {
+ "clusterIP": "None",
+ "ports": [
+ {
+ "name": "ping",
+ "port": 8888
+ }
+ ],
+ "selector": {
+ "deploymentConfig": "${APPLICATION_NAME}"
+ }
+ },
+ "metadata": {
+ "name": "${APPLICATION_NAME}-ping",
+ "labels": {
+ "application": "${APPLICATION_NAME}"
+ },
+ "annotations": {
+ "service.alpha.kubernetes.io/tolerate-unready-endpoints": "true",
+ "description": "The JGroups ping port for clustering."
+ }
+ }
+ },
+ {
"kind": "Route",
"apiVersion": "v1",
"id": "${APPLICATION_NAME}-http",
@@ -462,7 +487,7 @@
"from": {
"kind": "ImageStreamTag",
"namespace": "${IMAGE_STREAM_NAMESPACE}",
- "name": "jboss-eap71-openshift:TP"
+ "name": "jboss-eap71-openshift:1.1"
}
}
},
@@ -539,13 +564,17 @@
}
},
"spec": {
- "serviceAccountName": "${SERVICE_ACCOUNT_NAME}",
"terminationGracePeriodSeconds": 75,
"containers": [
{
"name": "${APPLICATION_NAME}",
"image": "${APPLICATION_NAME}",
"imagePullPolicy": "Always",
+ "resources": {
+ "limits": {
+ "memory": "${MEMORY_LIMIT}"
+ }
+ },
"volumeMounts": [
{
"name": "eap-keystore-volume",
@@ -565,7 +594,8 @@
"-c",
"/opt/eap/bin/livenessProbe.sh"
]
- }
+ },
+ "initialDelaySeconds": 60
},
"readinessProbe": {
"exec": {
@@ -636,16 +666,16 @@
"value": "${DB_TX_ISOLATION}"
},
{
- "name": "OPENSHIFT_KUBE_PING_LABELS",
- "value": "application=${APPLICATION_NAME}"
+ "name": "JGROUPS_PING_PROTOCOL",
+ "value": "openshift.DNS_PING"
+ },
+ {
+ "name": "OPENSHIFT_DNS_PING_SERVICE_NAME",
+ "value": "${APPLICATION_NAME}-ping"
},
{
- "name": "OPENSHIFT_KUBE_PING_NAMESPACE",
- "valueFrom": {
- "fieldRef": {
- "fieldPath": "metadata.namespace"
- }
- }
+ "name": "OPENSHIFT_DNS_PING_SERVICE_PORT",
+ "value": "8888"
},
{
"name": "HTTPS_KEYSTORE_DIR",
diff --git a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap71-mysql-s2i.json b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap71-mysql-s2i.json
index c7d14d3c7..d1062329e 100644
--- a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap71-mysql-s2i.json
+++ b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap71-mysql-s2i.json
@@ -5,7 +5,7 @@
"annotations": {
"iconClass": "icon-eap",
"tags": "eap,javaee,java,jboss,hidden",
- "version": "1.4.7",
+ "version": "1.4.8",
"openshift.io/display-name": "JBoss EAP 7.1 + MySQL (Ephemeral with https)",
"openshift.io/provider-display-name": "Red Hat, Inc.",
"description": "An example EAP 7 application with a MySQL database. For more information about using this template, see https://github.com/jboss-openshift/application-templates.",
@@ -17,9 +17,9 @@
},
"labels": {
"template": "eap71-mysql-s2i",
- "xpaas": "1.4.7"
+ "xpaas": "1.4.8"
},
- "message": "A new EAP 7 and MySQL based application with SSL support has been created in your project. The username/password for accessing the MySQL database \"${DB_DATABASE}\" is ${DB_USERNAME}/${DB_PASSWORD}. Please be sure to create the \"${SERVICE_ACCOUNT_NAME}\" service account and the following secrets: \"${HTTPS_SECRET}\" containing the ${HTTPS_KEYSTORE} file used for serving secure content; \"${JGROUPS_ENCRYPT_SECRET}\" containing the ${JGROUPS_ENCRYPT_KEYSTORE} file used for securing JGroups communications.",
+ "message": "A new EAP 7 and MySQL based application with SSL support has been created in your project. The username/password for accessing the MySQL database \"${DB_DATABASE}\" is ${DB_USERNAME}/${DB_PASSWORD}. Please be sure to create the following secrets: \"${HTTPS_SECRET}\" containing the ${HTTPS_KEYSTORE} file used for serving secure content; \"${JGROUPS_ENCRYPT_SECRET}\" containing the ${JGROUPS_ENCRYPT_KEYSTORE} file used for securing JGroups communications.",
"parameters": [
{
"displayName": "Application Name",
@@ -92,13 +92,6 @@
"required": false
},
{
- "displayName": "Service Account Name",
- "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
- },
- {
"displayName": "Server Keystore Secret Name",
"description": "The name of the secret containing the keystore file",
"name": "HTTPS_SECRET",
@@ -290,6 +283,12 @@
"name": "MYSQL_IMAGE_STREAM_TAG",
"value": "5.7",
"required": true
+ },
+ {
+ "description": "Container memory limit",
+ "name": "MEMORY_LIMIT",
+ "value": "1Gi",
+ "required": false
}
],
"objects": [
@@ -368,6 +367,32 @@
}
},
{
+ "kind": "Service",
+ "apiVersion": "v1",
+ "spec": {
+ "clusterIP": "None",
+ "ports": [
+ {
+ "name": "ping",
+ "port": 8888
+ }
+ ],
+ "selector": {
+ "deploymentConfig": "${APPLICATION_NAME}"
+ }
+ },
+ "metadata": {
+ "name": "${APPLICATION_NAME}-ping",
+ "labels": {
+ "application": "${APPLICATION_NAME}"
+ },
+ "annotations": {
+ "service.alpha.kubernetes.io/tolerate-unready-endpoints": "true",
+ "description": "The JGroups ping port for clustering."
+ }
+ }
+ },
+ {
"kind": "Route",
"apiVersion": "v1",
"id": "${APPLICATION_NAME}-http",
@@ -455,7 +480,7 @@
"from": {
"kind": "ImageStreamTag",
"namespace": "${IMAGE_STREAM_NAMESPACE}",
- "name": "jboss-eap71-openshift:TP"
+ "name": "jboss-eap71-openshift:1.1"
}
}
},
@@ -532,13 +557,17 @@
}
},
"spec": {
- "serviceAccountName": "${SERVICE_ACCOUNT_NAME}",
"terminationGracePeriodSeconds": 75,
"containers": [
{
"name": "${APPLICATION_NAME}",
"image": "${APPLICATION_NAME}",
"imagePullPolicy": "Always",
+ "resources": {
+ "limits": {
+ "memory": "${MEMORY_LIMIT}"
+ }
+ },
"volumeMounts": [
{
"name": "eap-keystore-volume",
@@ -558,7 +587,8 @@
"-c",
"/opt/eap/bin/livenessProbe.sh"
]
- }
+ },
+ "initialDelaySeconds": 60
},
"readinessProbe": {
"exec": {
@@ -629,16 +659,16 @@
"value": "${DB_TX_ISOLATION}"
},
{
- "name": "OPENSHIFT_KUBE_PING_LABELS",
- "value": "application=${APPLICATION_NAME}"
+ "name": "JGROUPS_PING_PROTOCOL",
+ "value": "openshift.DNS_PING"
+ },
+ {
+ "name": "OPENSHIFT_DNS_PING_SERVICE_NAME",
+ "value": "${APPLICATION_NAME}-ping"
},
{
- "name": "OPENSHIFT_KUBE_PING_NAMESPACE",
- "valueFrom": {
- "fieldRef": {
- "fieldPath": "metadata.namespace"
- }
- }
+ "name": "OPENSHIFT_DNS_PING_SERVICE_PORT",
+ "value": "8888"
},
{
"name": "HTTPS_KEYSTORE_DIR",
@@ -819,8 +849,22 @@
"name": "MYSQL_AIO",
"value": "${MYSQL_AIO}"
}
+ ],
+ "volumeMounts": [
+ {
+ "mountPath": "/var/lib/mysql/data",
+ "name": "${APPLICATION_NAME}-data"
+ }
]
}
+ ],
+ "volumes": [
+ {
+ "emptyDir": {
+ "medium": ""
+ },
+ "name": "${APPLICATION_NAME}-data"
+ }
]
}
}
diff --git a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap71-postgresql-persistent-s2i.json b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap71-postgresql-persistent-s2i.json
index a8d77b0ab..e4c306478 100644
--- a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap71-postgresql-persistent-s2i.json
+++ b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap71-postgresql-persistent-s2i.json
@@ -4,9 +4,9 @@
"metadata": {
"annotations": {
"iconClass": "icon-eap",
- "tags": "eap,javaee,java,jboss,hidden",
- "version": "1.4.7",
- "openshift.io/display-name": "JBoss EAP 7.1 + PostgreSQL (with https)",
+ "tags": "eap,javaee,java,jboss",
+ "version": "1.4.8",
+ "openshift.io/display-name": "JBoss EAP 7.1 + PostgreSQL (Persistent with https)",
"openshift.io/provider-display-name": "Red Hat, Inc.",
"description": "An example EAP 7 application with a PostgreSQL database. For more information about using this template, see https://github.com/jboss-openshift/application-templates.",
"template.openshift.io/long-description": "This template defines resources needed to develop Red Hat Enterprise Application Server 7.1 based application, including a build configuration, application deployment configuration, database deployment configuration for PostgreSQL using persistence and secure communication using https.",
@@ -17,9 +17,9 @@
},
"labels": {
"template": "eap71-postgresql-persistent-s2i",
- "xpaas": "1.4.7"
+ "xpaas": "1.4.8"
},
- "message": "A new EAP 7 and PostgreSQL persistent based application with SSL support has been created in your project. The username/password for accessing the PostgreSQL database \"${DB_DATABASE}\" is ${DB_USERNAME}/${DB_PASSWORD}. Please be sure to create the \"${SERVICE_ACCOUNT_NAME}\" service account and the following secrets: \"${HTTPS_SECRET}\" containing the ${HTTPS_KEYSTORE} file used for serving secure content; \"${JGROUPS_ENCRYPT_SECRET}\" containing the ${JGROUPS_ENCRYPT_KEYSTORE} file used for securing JGroups communications.",
+ "message": "A new EAP 7 and PostgreSQL persistent based application with SSL support has been created in your project. The username/password for accessing the PostgreSQL database \"${DB_DATABASE}\" is ${DB_USERNAME}/${DB_PASSWORD}. Please be sure to create the following secrets: \"${HTTPS_SECRET}\" containing the ${HTTPS_KEYSTORE} file used for serving secure content; \"${JGROUPS_ENCRYPT_SECRET}\" containing the ${JGROUPS_ENCRYPT_KEYSTORE} file used for securing JGroups communications.",
"parameters": [
{
"displayName": "Application Name",
@@ -81,7 +81,7 @@
"displayName": "Database Volume Capacity",
"description": "Size of persistent storage for database volume.",
"name": "VOLUME_CAPACITY",
- "value": "512Mi",
+ "value": "1Gi",
"required": true
},
{
@@ -99,13 +99,6 @@
"required": false
},
{
- "displayName": "Service Account Name",
- "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
- },
- {
"displayName": "Server Keystore Secret Name",
"description": "The name of the secret containing the keystore file",
"name": "HTTPS_SECRET",
@@ -279,6 +272,12 @@
"name": "POSTGRESQL_IMAGE_STREAM_TAG",
"value": "9.5",
"required": true
+ },
+ {
+ "description": "Container memory limit",
+ "name": "MEMORY_LIMIT",
+ "value": "1Gi",
+ "required": false
}
],
"objects": [
@@ -357,6 +356,32 @@
}
},
{
+ "kind": "Service",
+ "apiVersion": "v1",
+ "spec": {
+ "clusterIP": "None",
+ "ports": [
+ {
+ "name": "ping",
+ "port": 8888
+ }
+ ],
+ "selector": {
+ "deploymentConfig": "${APPLICATION_NAME}"
+ }
+ },
+ "metadata": {
+ "name": "${APPLICATION_NAME}-ping",
+ "labels": {
+ "application": "${APPLICATION_NAME}"
+ },
+ "annotations": {
+ "service.alpha.kubernetes.io/tolerate-unready-endpoints": "true",
+ "description": "The JGroups ping port for clustering."
+ }
+ }
+ },
+ {
"kind": "Route",
"apiVersion": "v1",
"id": "${APPLICATION_NAME}-http",
@@ -444,7 +469,7 @@
"from": {
"kind": "ImageStreamTag",
"namespace": "${IMAGE_STREAM_NAMESPACE}",
- "name": "jboss-eap71-openshift:TP"
+ "name": "jboss-eap71-openshift:1.1"
}
}
},
@@ -521,13 +546,17 @@
}
},
"spec": {
- "serviceAccountName": "${SERVICE_ACCOUNT_NAME}",
"terminationGracePeriodSeconds": 75,
"containers": [
{
"name": "${APPLICATION_NAME}",
"image": "${APPLICATION_NAME}",
"imagePullPolicy": "Always",
+ "resources": {
+ "limits": {
+ "memory": "${MEMORY_LIMIT}"
+ }
+ },
"volumeMounts": [
{
"name": "eap-keystore-volume",
@@ -547,7 +576,8 @@
"-c",
"/opt/eap/bin/livenessProbe.sh"
]
- }
+ },
+ "initialDelaySeconds": 60
},
"readinessProbe": {
"exec": {
@@ -618,16 +648,16 @@
"value": "${DB_TX_ISOLATION}"
},
{
- "name": "OPENSHIFT_KUBE_PING_LABELS",
- "value": "application=${APPLICATION_NAME}"
+ "name": "JGROUPS_PING_PROTOCOL",
+ "value": "openshift.DNS_PING"
+ },
+ {
+ "name": "OPENSHIFT_DNS_PING_SERVICE_NAME",
+ "value": "${APPLICATION_NAME}-ping"
},
{
- "name": "OPENSHIFT_KUBE_PING_NAMESPACE",
- "valueFrom": {
- "fieldRef": {
- "fieldPath": "metadata.namespace"
- }
- }
+ "name": "OPENSHIFT_DNS_PING_SERVICE_PORT",
+ "value": "8888"
},
{
"name": "HTTPS_KEYSTORE_DIR",
diff --git a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap71-postgresql-s2i.json b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap71-postgresql-s2i.json
index d87f05ea8..ef5402199 100644
--- a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap71-postgresql-s2i.json
+++ b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap71-postgresql-s2i.json
@@ -5,7 +5,7 @@
"annotations": {
"iconClass": "icon-eap",
"tags": "eap,javaee,java,jboss,hidden",
- "version": "1.4.7",
+ "version": "1.4.8",
"openshift.io/display-name": "JBoss EAP 7.1 + PostgreSQL (Ephemeral with https)",
"openshift.io/provider-display-name": "Red Hat, Inc.",
"description": "An example EAP 7 application with a PostgreSQL database. For more information about using this template, see https://github.com/jboss-openshift/application-templates.",
@@ -17,9 +17,9 @@
},
"labels": {
"template": "eap71-postgresql-s2i",
- "xpaas": "1.4.7"
+ "xpaas": "1.4.8"
},
- "message": "A new EAP 7 and PostgreSQL based application with SSL support has been created in your project. The username/password for accessing the PostgreSQL database \"${DB_DATABASE}\" is ${DB_USERNAME}/${DB_PASSWORD}. Please be sure to create the \"${SERVICE_ACCOUNT_NAME}\" service account and the following secrets: \"${HTTPS_SECRET}\" containing the ${HTTPS_KEYSTORE} file used for serving secure content; \"${JGROUPS_ENCRYPT_SECRET}\" containing the ${JGROUPS_ENCRYPT_KEYSTORE} file used for securing JGroups communications.",
+ "message": "A new EAP 7 and PostgreSQL based application with SSL support has been created in your project. The username/password for accessing the PostgreSQL database \"${DB_DATABASE}\" is ${DB_USERNAME}/${DB_PASSWORD}. Please be sure to create the following secrets: \"${HTTPS_SECRET}\" containing the ${HTTPS_KEYSTORE} file used for serving secure content; \"${JGROUPS_ENCRYPT_SECRET}\" containing the ${JGROUPS_ENCRYPT_KEYSTORE} file used for securing JGroups communications.",
"parameters": [
{
"displayName": "Application Name",
@@ -92,13 +92,6 @@
"required": false
},
{
- "displayName": "Service Account Name",
- "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
- },
- {
"displayName": "Server Keystore Secret Name",
"description": "The name of the secret containing the keystore file",
"name": "HTTPS_SECRET",
@@ -272,6 +265,12 @@
"name": "POSTGRESQL_IMAGE_STREAM_TAG",
"value": "9.5",
"required": true
+ },
+ {
+ "description": "Container memory limit",
+ "name": "MEMORY_LIMIT",
+ "value": "1Gi",
+ "required": false
}
],
"objects": [
@@ -350,6 +349,32 @@
}
},
{
+ "kind": "Service",
+ "apiVersion": "v1",
+ "spec": {
+ "clusterIP": "None",
+ "ports": [
+ {
+ "name": "ping",
+ "port": 8888
+ }
+ ],
+ "selector": {
+ "deploymentConfig": "${APPLICATION_NAME}"
+ }
+ },
+ "metadata": {
+ "name": "${APPLICATION_NAME}-ping",
+ "labels": {
+ "application": "${APPLICATION_NAME}"
+ },
+ "annotations": {
+ "service.alpha.kubernetes.io/tolerate-unready-endpoints": "true",
+ "description": "The JGroups ping port for clustering."
+ }
+ }
+ },
+ {
"kind": "Route",
"apiVersion": "v1",
"id": "${APPLICATION_NAME}-http",
@@ -437,7 +462,7 @@
"from": {
"kind": "ImageStreamTag",
"namespace": "${IMAGE_STREAM_NAMESPACE}",
- "name": "jboss-eap71-openshift:TP"
+ "name": "jboss-eap71-openshift:1.1"
}
}
},
@@ -514,13 +539,17 @@
}
},
"spec": {
- "serviceAccountName": "${SERVICE_ACCOUNT_NAME}",
"terminationGracePeriodSeconds": 75,
"containers": [
{
"name": "${APPLICATION_NAME}",
"image": "${APPLICATION_NAME}",
"imagePullPolicy": "Always",
+ "resources": {
+ "limits": {
+ "memory": "${MEMORY_LIMIT}"
+ }
+ },
"volumeMounts": [
{
"name": "eap-keystore-volume",
@@ -540,7 +569,8 @@
"-c",
"/opt/eap/bin/livenessProbe.sh"
]
- }
+ },
+ "initialDelaySeconds": 60
},
"readinessProbe": {
"exec": {
@@ -611,16 +641,16 @@
"value": "${DB_TX_ISOLATION}"
},
{
- "name": "OPENSHIFT_KUBE_PING_LABELS",
- "value": "application=${APPLICATION_NAME}"
+ "name": "JGROUPS_PING_PROTOCOL",
+ "value": "openshift.DNS_PING"
+ },
+ {
+ "name": "OPENSHIFT_DNS_PING_SERVICE_NAME",
+ "value": "${APPLICATION_NAME}-ping"
},
{
- "name": "OPENSHIFT_KUBE_PING_NAMESPACE",
- "valueFrom": {
- "fieldRef": {
- "fieldPath": "metadata.namespace"
- }
- }
+ "name": "OPENSHIFT_DNS_PING_SERVICE_PORT",
+ "value": "8888"
},
{
"name": "HTTPS_KEYSTORE_DIR",
@@ -793,8 +823,22 @@
"name": "POSTGRESQL_SHARED_BUFFERS",
"value": "${POSTGRESQL_SHARED_BUFFERS}"
}
+ ],
+ "volumeMounts": [
+ {
+ "mountPath": "/var/lib/pgsql/data",
+ "name": "${APPLICATION_NAME}-data"
+ }
]
}
+ ],
+ "volumes": [
+ {
+ "emptyDir": {
+ "medium": ""
+ },
+ "name": "${APPLICATION_NAME}-data"
+ }
]
}
}
diff --git a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap71-sso-s2i.json b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap71-sso-s2i.json
index 96b3dffc9..3e5c346bf 100644
--- a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap71-sso-s2i.json
+++ b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap71-sso-s2i.json
@@ -5,7 +5,7 @@
"annotations": {
"iconClass": "icon-eap",
"tags": "eap,javaee,java,jboss,hidden",
- "version": "1.4.7",
+ "version": "1.4.8",
"openshift.io/display-name": "JBoss EAP 7.1 + Single Sign-On (with https)",
"openshift.io/provider-display-name": "Red Hat, Inc.",
"description": "An example EAP 7 Single Sign-On application. For more information about using this template, see https://github.com/jboss-openshift/application-templates.",
@@ -17,9 +17,9 @@
},
"labels": {
"template": "eap71-sso-s2i",
- "xpaas": "1.4.7"
+ "xpaas": "1.4.8"
},
- "message": "A new EAP 7 based application with SSL and SSO support has been created in your project. Please be sure to create the \"${SERVICE_ACCOUNT_NAME}\" service account and the following secrets: \"${HTTPS_SECRET}\" containing the ${HTTPS_KEYSTORE} file used for serving secure content; \"${JGROUPS_ENCRYPT_SECRET}\" containing the ${JGROUPS_ENCRYPT_KEYSTORE} file used for securing JGroups communications.",
+ "message": "A new EAP 7 based application with SSL and SSO support has been created in your project. Please be sure to create the following secrets: \"${HTTPS_SECRET}\" containing the ${HTTPS_KEYSTORE} file used for serving secure content; \"${JGROUPS_ENCRYPT_SECRET}\" containing the ${JGROUPS_ENCRYPT_KEYSTORE} file used for securing JGroups communications.",
"parameters": [
{
"displayName": "Application Name",
@@ -66,22 +66,23 @@
{
"displayName": "Queues",
"description": "Queue names",
- "name": "HORNETQ_QUEUES",
+ "name": "MQ_QUEUES",
"value": "",
"required": false
},
{
"displayName": "Topics",
"description": "Topic names",
- "name": "HORNETQ_TOPICS",
+ "name": "MQ_TOPICS",
"value": "",
"required": false
},
{
- "displayName": "Service Account Name",
- "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",
+ "displayName": "A-MQ cluster password",
+ "description": "A-MQ cluster admin password",
+ "name": "MQ_CLUSTER_PASSWORD",
+ "from": "[a-zA-Z0-9]{8}",
+ "generate": "expression",
"required": true
},
{
@@ -120,14 +121,6 @@
"required": false
},
{
- "displayName": "HornetQ Password",
- "description": "HornetQ cluster admin password",
- "name": "HORNETQ_CLUSTER_PASSWORD",
- "from": "[a-zA-Z0-9]{8}",
- "generate": "expression",
- "required": true
- },
- {
"displayName": "Github Webhook Secret",
"description": "GitHub trigger secret",
"name": "GITHUB_WEBHOOK_SECRET",
@@ -333,6 +326,12 @@
"name": "MAVEN_MIRROR_URL",
"value": "",
"required": false
+ },
+ {
+ "description": "Container memory limit",
+ "name": "MEMORY_LIMIT",
+ "value": "1Gi",
+ "required": false
}
],
"objects": [
@@ -385,6 +384,32 @@
}
},
{
+ "kind": "Service",
+ "apiVersion": "v1",
+ "spec": {
+ "clusterIP": "None",
+ "ports": [
+ {
+ "name": "ping",
+ "port": 8888
+ }
+ ],
+ "selector": {
+ "deploymentConfig": "${APPLICATION_NAME}"
+ }
+ },
+ "metadata": {
+ "name": "${APPLICATION_NAME}-ping",
+ "labels": {
+ "application": "${APPLICATION_NAME}"
+ },
+ "annotations": {
+ "service.alpha.kubernetes.io/tolerate-unready-endpoints": "true",
+ "description": "The JGroups ping port for clustering."
+ }
+ }
+ },
+ {
"kind": "Route",
"apiVersion": "v1",
"id": "${APPLICATION_NAME}-http",
@@ -462,7 +487,7 @@
"from": {
"kind": "ImageStreamTag",
"namespace": "${IMAGE_STREAM_NAMESPACE}",
- "name": "jboss-eap71-openshift:TP"
+ "name": "jboss-eap71-openshift:1.1"
},
"env": [
{
@@ -553,13 +578,17 @@
}
},
"spec": {
- "serviceAccountName": "${SERVICE_ACCOUNT_NAME}",
"terminationGracePeriodSeconds": 75,
"containers": [
{
"name": "${APPLICATION_NAME}",
"image": "${APPLICATION_NAME}",
"imagePullPolicy": "Always",
+ "resources": {
+ "limits": {
+ "memory": "${MEMORY_LIMIT}"
+ }
+ },
"volumeMounts": [
{
"name": "sso-saml-keystore-volume",
@@ -589,7 +618,8 @@
"-c",
"/opt/eap/bin/livenessProbe.sh"
]
- }
+ },
+ "initialDelaySeconds": 60
},
"readinessProbe": {
"exec": {
@@ -624,16 +654,16 @@
],
"env": [
{
- "name": "OPENSHIFT_KUBE_PING_LABELS",
- "value": "application=${APPLICATION_NAME}"
+ "name": "JGROUPS_PING_PROTOCOL",
+ "value": "openshift.DNS_PING"
+ },
+ {
+ "name": "OPENSHIFT_DNS_PING_SERVICE_NAME",
+ "value": "${APPLICATION_NAME}-ping"
},
{
- "name": "OPENSHIFT_KUBE_PING_NAMESPACE",
- "valueFrom": {
- "fieldRef": {
- "fieldPath": "metadata.namespace"
- }
- }
+ "name": "OPENSHIFT_DNS_PING_SERVICE_PORT",
+ "value": "8888"
},
{
"name": "HOSTNAME_HTTP",
@@ -664,16 +694,16 @@
"value": "${HTTPS_PASSWORD}"
},
{
- "name": "HORNETQ_CLUSTER_PASSWORD",
- "value": "${HORNETQ_CLUSTER_PASSWORD}"
+ "name": "MQ_CLUSTER_PASSWORD",
+ "value": "${MQ_CLUSTER_PASSWORD}"
},
{
- "name": "HORNETQ_QUEUES",
- "value": "${HORNETQ_QUEUES}"
+ "name": "MQ_QUEUES",
+ "value": "${MQ_QUEUES}"
},
{
- "name": "HORNETQ_TOPICS",
- "value": "${HORNETQ_TOPICS}"
+ "name": "MQ_TOPICS",
+ "value": "${MQ_TOPICS}"
},
{
"name": "JGROUPS_ENCRYPT_SECRET",
diff --git a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap71-third-party-db-s2i.json b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap71-third-party-db-s2i.json
index a2a7264fb..41644db89 100644
--- a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap71-third-party-db-s2i.json
+++ b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap71-third-party-db-s2i.json
@@ -5,7 +5,7 @@
"annotations": {
"iconClass": "icon-eap",
"tags": "eap,javaee,java,jboss,hidden",
- "version": "1.4.7",
+ "version": "1.4.8",
"openshift.io/display-name": "JBoss EAP 7.1 (with https, DB drivers)",
"openshift.io/provider-display-name": "Red Hat, Inc.",
"description": "An example EAP 7 DB application. For more information about using this template, see https://github.com/jboss-openshift/application-templates.",
@@ -17,9 +17,9 @@
},
"labels": {
"template": "eap71-third-party-db-s2i",
- "xpaas": "1.4.7"
+ "xpaas": "1.4.8"
},
- "message": "A new EAP 7 based application with SSL support has been created in your project. Please be sure to create the \"${SERVICE_ACCOUNT_NAME}\" service account and the following secrets:\"${CONFIGURATION_NAME}\" containing the datasource configuration details required by the deployed application(s); \"${HTTPS_SECRET}\" containing the ${HTTPS_KEYSTORE} file used for serving secure content; \"${JGROUPS_ENCRYPT_SECRET}\" containing the ${JGROUPS_ENCRYPT_KEYSTORE} file used for securing JGroups communications.",
+ "message": "A new EAP 7 based application with SSL support has been created in your project. Please be sure to create the following secrets:\"${CONFIGURATION_NAME}\" containing the datasource configuration details required by the deployed application(s); \"${HTTPS_SECRET}\" containing the ${HTTPS_KEYSTORE} file used for serving secure content; \"${JGROUPS_ENCRYPT_SECRET}\" containing the ${JGROUPS_ENCRYPT_KEYSTORE} file used for securing JGroups communications.",
"parameters": [
{
"displayName": "Application Name",
@@ -72,7 +72,7 @@
},
{
"displayName": "Drivers ImageStreamTag",
- "description": "ImageStreamTag definition for the image containing the drivers and configuration, e.g. jboss-datavirt63-openshift:1.0-driver",
+ "description": "ImageStreamTag definition for the image containing the drivers and configuration, e.g. jboss-datavirt63-driver-openshift:1.1",
"name": "EXTENSIONS_IMAGE",
"value": "jboss-datavirt63-driver-openshift:1.1",
"required": true
@@ -106,13 +106,6 @@
"required": false
},
{
- "displayName": "Service Account Name",
- "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
- },
- {
"displayName": "Server Keystore Secret Name",
"description": "The name of the secret containing the keystore file",
"name": "HTTPS_SECRET",
@@ -233,6 +226,12 @@
"name": "ARTIFACT_DIR",
"value": "",
"required": false
+ },
+ {
+ "description": "Container memory limit",
+ "name": "MEMORY_LIMIT",
+ "value": "1Gi",
+ "required": false
}
],
"objects": [
@@ -285,6 +284,32 @@
}
},
{
+ "kind": "Service",
+ "apiVersion": "v1",
+ "spec": {
+ "clusterIP": "None",
+ "ports": [
+ {
+ "name": "ping",
+ "port": 8888
+ }
+ ],
+ "selector": {
+ "deploymentConfig": "${APPLICATION_NAME}"
+ }
+ },
+ "metadata": {
+ "name": "${APPLICATION_NAME}-ping",
+ "labels": {
+ "application": "${APPLICATION_NAME}"
+ },
+ "annotations": {
+ "service.alpha.kubernetes.io/tolerate-unready-endpoints": "true",
+ "description": "The JGroups ping port for clustering."
+ }
+ }
+ },
+ {
"kind": "Route",
"apiVersion": "v1",
"id": "${APPLICATION_NAME}-http",
@@ -391,7 +416,7 @@
"from": {
"kind": "ImageStreamTag",
"namespace": "${IMAGE_STREAM_NAMESPACE}",
- "name": "jboss-eap71-openshift:TP"
+ "name": "jboss-eap71-openshift:1.1"
}
}
},
@@ -478,13 +503,17 @@
}
},
"spec": {
- "serviceAccountName": "${SERVICE_ACCOUNT_NAME}",
"terminationGracePeriodSeconds": 75,
"containers": [
{
"name": "${APPLICATION_NAME}",
"image": "${APPLICATION_NAME}",
"imagePullPolicy": "Always",
+ "resources": {
+ "limits": {
+ "memory": "${MEMORY_LIMIT}"
+ }
+ },
"volumeMounts": [
{
"name": "configuration",
@@ -509,7 +538,8 @@
"-c",
"/opt/eap/bin/livenessProbe.sh"
]
- }
+ },
+ "initialDelaySeconds": 60
},
"readinessProbe": {
"exec": {
@@ -544,16 +574,16 @@
],
"env": [
{
- "name": "OPENSHIFT_KUBE_PING_LABELS",
- "value": "application=${APPLICATION_NAME}"
+ "name": "JGROUPS_PING_PROTOCOL",
+ "value": "openshift.DNS_PING"
+ },
+ {
+ "name": "OPENSHIFT_DNS_PING_SERVICE_NAME",
+ "value": "${APPLICATION_NAME}-ping"
},
{
- "name": "OPENSHIFT_KUBE_PING_NAMESPACE",
- "valueFrom": {
- "fieldRef": {
- "fieldPath": "metadata.namespace"
- }
- }
+ "name": "OPENSHIFT_DNS_PING_SERVICE_PORT",
+ "value": "8888"
},
{
"name": "ENV_FILES",
diff --git a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap71-tx-recovery-s2i.json b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap71-tx-recovery-s2i.json
new file mode 100644
index 000000000..e2525c7e7
--- /dev/null
+++ b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/eap71-tx-recovery-s2i.json
@@ -0,0 +1,605 @@
+{
+ "kind": "Template",
+ "apiVersion": "v1",
+ "metadata": {
+ "annotations": {
+ "iconClass": "icon-eap",
+ "tags": "eap,javaee,java,jboss",
+ "version": "1.4.8",
+ "openshift.io/display-name": "JBoss EAP 7.1 (tx recovery)",
+ "openshift.io/provider-display-name": "Red Hat, Inc.",
+ "description": "An example EAP 7 application. For more information about using this template, see https://github.com/jboss-openshift/application-templates.",
+ "template.openshift.io/long-description": "This template defines resources needed to develop Red Hat Enterprise Application Server 7.1 based application, including a build configuration, application deployment configuration and insecure communication using http. The template also demonstrates how to enable automated transaction recovery on scale down of application pods. Automated transaction recovery is currently Technology Preview.",
+ "template.openshift.io/documentation-url": "https://access.redhat.com/documentation/en/red-hat-jboss-enterprise-application-platform/",
+ "template.openshift.io/support-url": "https://access.redhat.com"
+ },
+ "name": "eap71-tx-recovery-s2i"
+ },
+ "labels": {
+ "template": "eap71-tx-recovery-s2i",
+ "xpaas": "1.4.8"
+ },
+ "message": "A new EAP 7 based application has been created in your project.",
+ "parameters": [
+ {
+ "displayName": "Application Name",
+ "description": "The name for the application.",
+ "name": "APPLICATION_NAME",
+ "value": "eap-app",
+ "required": true
+ },
+ {
+ "displayName": "Custom http Route Hostname",
+ "description": "Custom hostname for http service route. Leave blank for default hostname, e.g.: <application-name>-<project>.<default-domain-suffix>",
+ "name": "HOSTNAME_HTTP",
+ "value": "",
+ "required": false
+ },
+ {
+ "displayName": "Git Repository URL",
+ "description": "Git source URI for application",
+ "name": "SOURCE_REPOSITORY_URL",
+ "value": "https://github.com/jboss-developer/jboss-eap-quickstarts",
+ "required": true
+ },
+ {
+ "displayName": "Git Reference",
+ "description": "Git branch/tag reference",
+ "name": "SOURCE_REPOSITORY_REF",
+ "value": "7.0.0.GA",
+ "required": false
+ },
+ {
+ "displayName": "Context Directory",
+ "description": "Path within Git project to build; empty for root project directory.",
+ "name": "CONTEXT_DIR",
+ "value": "kitchensink",
+ "required": false
+ },
+ {
+ "displayName": "Queues",
+ "description": "Queue names",
+ "name": "MQ_QUEUES",
+ "value": "",
+ "required": false
+ },
+ {
+ "displayName": "Topics",
+ "description": "Topic names",
+ "name": "MQ_TOPICS",
+ "value": "",
+ "required": false
+ },
+ {
+ "displayName": "A-MQ cluster password",
+ "description": "A-MQ cluster admin password",
+ "name": "MQ_CLUSTER_PASSWORD",
+ "from": "[a-zA-Z0-9]{8}",
+ "generate": "expression",
+ "required": true
+ },
+ {
+ "displayName": "Github Webhook Secret",
+ "description": "GitHub trigger secret",
+ "name": "GITHUB_WEBHOOK_SECRET",
+ "from": "[a-zA-Z0-9]{8}",
+ "generate": "expression",
+ "required": true
+ },
+ {
+ "displayName": "Generic Webhook Secret",
+ "description": "Generic build trigger secret",
+ "name": "GENERIC_WEBHOOK_SECRET",
+ "from": "[a-zA-Z0-9]{8}",
+ "generate": "expression",
+ "required": true
+ },
+ {
+ "displayName": "ImageStream Namespace",
+ "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
+ },
+ {
+ "displayName": "JGroups Cluster Password",
+ "description": "JGroups cluster password",
+ "name": "JGROUPS_CLUSTER_PASSWORD",
+ "from": "[a-zA-Z0-9]{8}",
+ "generate": "expression",
+ "required": true
+ },
+ {
+ "displayName": "Deploy Exploded Archives",
+ "description": "Controls whether exploded deployment content should be automatically deployed",
+ "name": "AUTO_DEPLOY_EXPLODED",
+ "value": "false",
+ "required": false
+ },
+ {
+ "displayName": "Maven mirror URL",
+ "description": "Maven mirror to use for S2I builds",
+ "name": "MAVEN_MIRROR_URL",
+ "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": "",
+ "required": false
+ },
+ {
+ "description": "Container memory limit",
+ "name": "MEMORY_LIMIT",
+ "value": "1Gi",
+ "required": false
+ },
+ {
+ "displayName": "EAP Volume Size",
+ "description": "Size of the volume used by EAP for persisting data.",
+ "name": "VOLUME_CAPACITY",
+ "value": "1Gi",
+ "required": true
+ },
+ {
+ "displayName": "Split the data directory?",
+ "description": "Split the data directory for each node in a cluster.",
+ "name": "SPLIT_DATA",
+ "value": "true",
+ "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": {
+ "clusterIP": "None",
+ "ports": [
+ {
+ "name": "ping",
+ "port": 8888
+ }
+ ],
+ "selector": {
+ "deploymentConfig": "${APPLICATION_NAME}"
+ }
+ },
+ "metadata": {
+ "name": "${APPLICATION_NAME}-ping",
+ "labels": {
+ "application": "${APPLICATION_NAME}"
+ },
+ "annotations": {
+ "service.alpha.kubernetes.io/tolerate-unready-endpoints": "true",
+ "description": "The JGroups ping port for clustering."
+ }
+ }
+ },
+ {
+ "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": "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": {
+ "env": [
+ {
+ "name": "MAVEN_MIRROR_URL",
+ "value": "${MAVEN_MIRROR_URL}"
+ },
+ {
+ "name": "ARTIFACT_DIR",
+ "value": "${ARTIFACT_DIR}"
+ }
+ ],
+ "forcePull": true,
+ "from": {
+ "kind": "ImageStreamTag",
+ "namespace": "${IMAGE_STREAM_NAMESPACE}",
+ "name": "jboss-eap71-openshift:1.1"
+ }
+ }
+ },
+ "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": {
+ "terminationGracePeriodSeconds": 75,
+ "containers": [
+ {
+ "name": "${APPLICATION_NAME}",
+ "image": "${APPLICATION_NAME}",
+ "imagePullPolicy": "Always",
+ "resources": {
+ "limits": {
+ "memory": "${MEMORY_LIMIT}"
+ }
+ },
+ "livenessProbe": {
+ "exec": {
+ "command": [
+ "/bin/bash",
+ "-c",
+ "/opt/eap/bin/livenessProbe.sh"
+ ]
+ },
+ "initialDelaySeconds": 60
+ },
+ "readinessProbe": {
+ "exec": {
+ "command": [
+ "/bin/bash",
+ "-c",
+ "/opt/eap/bin/readinessProbe.sh"
+ ]
+ }
+ },
+ "volumeMounts": [
+ {
+ "mountPath": "/opt/eap/standalone/partitioned_data",
+ "name": "${APPLICATION_NAME}-eap-pvol"
+ }
+ ],
+ "ports": [
+ {
+ "name": "jolokia",
+ "containerPort": 8778,
+ "protocol": "TCP"
+ },
+ {
+ "name": "http",
+ "containerPort": 8080,
+ "protocol": "TCP"
+ },
+ {
+ "name": "ping",
+ "containerPort": 8888,
+ "protocol": "TCP"
+ }
+ ],
+ "env": [
+ {
+ "name": "JGROUPS_PING_PROTOCOL",
+ "value": "openshift.DNS_PING"
+ },
+ {
+ "name": "OPENSHIFT_DNS_PING_SERVICE_NAME",
+ "value": "${APPLICATION_NAME}-ping"
+ },
+ {
+ "name": "OPENSHIFT_DNS_PING_SERVICE_PORT",
+ "value": "8888"
+ },
+ {
+ "name": "MQ_CLUSTER_PASSWORD",
+ "value": "${MQ_CLUSTER_PASSWORD}"
+ },
+ {
+ "name": "MQ_QUEUES",
+ "value": "${MQ_QUEUES}"
+ },
+ {
+ "name": "MQ_TOPICS",
+ "value": "${MQ_TOPICS}"
+ },
+ {
+ "name": "JGROUPS_CLUSTER_PASSWORD",
+ "value": "${JGROUPS_CLUSTER_PASSWORD}"
+ },
+ {
+ "name": "AUTO_DEPLOY_EXPLODED",
+ "value": "${AUTO_DEPLOY_EXPLODED}"
+ },
+ {
+ "name": "SPLIT_DATA",
+ "value": "${SPLIT_DATA}"
+ }
+ ]
+ }
+ ],
+ "volumes": [
+ {
+ "name": "${APPLICATION_NAME}-eap-pvol",
+ "persistentVolumeClaim": {
+ "claimName": "${APPLICATION_NAME}-eap-claim"
+ }
+ }
+ ]
+ }
+ }
+ }
+ },
+ {
+ "kind": "DeploymentConfig",
+ "apiVersion": "v1",
+ "metadata": {
+ "name": "${APPLICATION_NAME}-migration",
+ "labels": {
+ "application": "${APPLICATION_NAME}"
+ }
+ },
+ "spec": {
+ "strategy": {
+ "type": "Recreate"
+ },
+ "triggers": [
+ {
+ "type": "ImageChange",
+ "imageChangeParams": {
+ "automatic": true,
+ "containerNames": [
+ "${APPLICATION_NAME}-migration"
+ ],
+ "from": {
+ "kind": "ImageStreamTag",
+ "name": "${APPLICATION_NAME}:latest"
+ }
+ }
+ },
+ {
+ "type": "ConfigChange"
+ }
+ ],
+ "replicas": 1,
+ "selector": {
+ "deploymentConfig": "${APPLICATION_NAME}-migration"
+ },
+ "template": {
+ "metadata": {
+ "name": "${APPLICATION_NAME}-migration",
+ "labels": {
+ "deploymentConfig": "${APPLICATION_NAME}-migration",
+ "application": "${APPLICATION_NAME}"
+ }
+ },
+ "spec": {
+ "terminationGracePeriodSeconds": 75,
+ "containers": [
+ {
+ "name": "${APPLICATION_NAME}-migration",
+ "image": "${APPLICATION_NAME}",
+ "command": [
+ "/opt/eap/bin/openshift-migrate.sh"
+ ],
+ "imagePullPolicy": "Always",
+ "resources": {
+ "limits": {
+ "memory": "${MEMORY_LIMIT}"
+ }
+ },
+ "volumeMounts": [
+ {
+ "mountPath": "/opt/eap/standalone/partitioned_data",
+ "name": "${APPLICATION_NAME}-eap-pvol"
+ }
+ ],
+ "ports": [
+ {
+ "name": "jolokia",
+ "containerPort": 8778,
+ "protocol": "TCP"
+ },
+ {
+ "name": "http",
+ "containerPort": 8080,
+ "protocol": "TCP"
+ },
+ {
+ "name": "ping",
+ "containerPort": 8888,
+ "protocol": "TCP"
+ }
+ ],
+ "env": [
+ {
+ "name": "JGROUPS_PING_PROTOCOL",
+ "value": "openshift.DNS_PING"
+ },
+ {
+ "name": "OPENSHIFT_DNS_PING_SERVICE_NAME",
+ "value": "${APPLICATION_NAME}-ping"
+ },
+ {
+ "name": "OPENSHIFT_DNS_PING_SERVICE_PORT",
+ "value": "8888"
+ },
+ {
+ "name": "MQ_CLUSTER_PASSWORD",
+ "value": "${MQ_CLUSTER_PASSWORD}"
+ },
+ {
+ "name": "MQ_QUEUES",
+ "value": "${MQ_QUEUES}"
+ },
+ {
+ "name": "MQ_TOPICS",
+ "value": "${MQ_TOPICS}"
+ },
+ {
+ "name": "JGROUPS_CLUSTER_PASSWORD",
+ "value": "${JGROUPS_CLUSTER_PASSWORD}"
+ },
+ {
+ "name": "AUTO_DEPLOY_EXPLODED",
+ "value": "${AUTO_DEPLOY_EXPLODED}"
+ },
+ {
+ "name": "SPLIT_DATA",
+ "value": "${SPLIT_DATA}"
+ }
+ ]
+ }
+ ],
+ "volumes": [
+ {
+ "name": "${APPLICATION_NAME}-eap-pvol",
+ "persistentVolumeClaim": {
+ "claimName": "${APPLICATION_NAME}-eap-claim"
+ }
+ }
+ ]
+ }
+ }
+ }
+ },
+ {
+ "apiVersion": "v1",
+ "kind": "PersistentVolumeClaim",
+ "metadata": {
+ "name": "${APPLICATION_NAME}-eap-claim",
+ "labels": {
+ "application": "${APPLICATION_NAME}"
+ }
+ },
+ "spec": {
+ "accessModes": [
+ "ReadWriteMany"
+ ],
+ "resources": {
+ "requests": {
+ "storage": "${VOLUME_CAPACITY}"
+ }
+ }
+ }
+ }
+ ]
+}
diff --git a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/jws31-tomcat7-basic-s2i.json b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/jws31-tomcat7-basic-s2i.json
index 42e352538..146cbeb0e 100644
--- a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/jws31-tomcat7-basic-s2i.json
+++ b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/jws31-tomcat7-basic-s2i.json
@@ -7,14 +7,14 @@
"openshift.io/provider-display-name": "Red Hat, Inc.",
"description": "Application template for JWS applications built using S2I.",
"tags": "tomcat,tomcat7,java,jboss",
- "version": "1.4.7",
+ "version": "1.4.8",
"openshift.io/display-name": "JBoss Web Server 3.1 Apache Tomcat 7 (no https)"
},
"name": "jws31-tomcat7-basic-s2i"
},
"labels": {
"template": "jws31-tomcat7-basic-s2i",
- "xpaas": "1.4.7"
+ "xpaas": "1.4.8"
},
"message": "A new JWS application for Apache Tomcat 7 has been created in your project. The username/password for administering your JWS is ${JWS_ADMIN_USERNAME}/${JWS_ADMIN_PASSWORD}.",
"parameters": [
diff --git a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/jws31-tomcat7-https-s2i.json b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/jws31-tomcat7-https-s2i.json
index b0a81d9c3..8de78d6b6 100644
--- a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/jws31-tomcat7-https-s2i.json
+++ b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/jws31-tomcat7-https-s2i.json
@@ -7,7 +7,7 @@
"openshift.io/provider-display-name": "Red Hat, Inc.",
"description": "An example JBoss Web Server application configured for use with https. For more information about using this template, see https://github.com/jboss-openshift/application-templates.",
"tags": "tomcat,tomcat7,java,jboss,hidden",
- "version": "1.4.7",
+ "version": "1.4.8",
"openshift.io/display-name": "JBoss Web Server 3.1 Apache Tomcat 7 (with https)",
"template.openshift.io/long-description": "This template defines resources needed to develop Red Hat JBoss Web Server 3.1 Apache Tomcat 7 based application, including a build configuration, and application deployment configuration. This also illustrations how to connect to the web applicaiton using https.",
"template.openshift.io/documentation-url": "https://access.redhat.com/documentation/en/red-hat-jboss-web-server/",
@@ -18,9 +18,9 @@
},
"labels": {
"template": "jws31-tomcat7-https-s2i",
- "xpaas": "1.4.7"
+ "xpaas": "1.4.8"
},
- "message": "A new JWS application for Apache Tomcat 7 has been created in your project. The username/password for administering your JWS is ${JWS_ADMIN_USERNAME}/${JWS_ADMIN_PASSWORD}. Please be sure to create the \"jws-service-account\" service account and the secret named \"${JWS_HTTPS_SECRET}\" containing the ${JWS_HTTPS_CERTIFICATE} file used for serving secure content.",
+ "message": "A new JWS application for Apache Tomcat 7 has been created in your project. The username/password for administering your JWS is ${JWS_ADMIN_USERNAME}/${JWS_ADMIN_PASSWORD}. Please be sure to create the secret named \"${JWS_HTTPS_SECRET}\" containing the ${JWS_HTTPS_CERTIFICATE} file used for serving secure content.",
"parameters": [
{
"displayName": "Application Name",
@@ -359,7 +359,6 @@
}
},
"spec": {
- "serviceAccountName": "jws-service-account",
"terminationGracePeriodSeconds": 60,
"containers": [
{
diff --git a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/jws31-tomcat7-mongodb-persistent-s2i.json b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/jws31-tomcat7-mongodb-persistent-s2i.json
index 565f97822..97b0df4c3 100644
--- a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/jws31-tomcat7-mongodb-persistent-s2i.json
+++ b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/jws31-tomcat7-mongodb-persistent-s2i.json
@@ -6,7 +6,7 @@
"iconClass": "icon-rh-tomcat",
"openshift.io/provider-display-name": "Red Hat, Inc.",
"tags": "tomcat,tomcat7,java,jboss",
- "version": "1.4.7",
+ "version": "1.4.8",
"openshift.io/display-name": "JBoss Web Server 3.1 Apache Tomcat 7 + MongoDB (with https)",
"description": "An example JBoss Web Server application with a MongoDB database. For more information about using this template, see https://github.com/jboss-openshift/application-templates.",
"template.openshift.io/long-description": "This template defines resources needed to develop Red Hat JBoss Web Server 3.1 Apache Tomcat 7 based application, including a build configuration, application deployment configuration, database deployment configuration for MongoDB using persistence and secure communication using https.",
@@ -17,9 +17,9 @@
},
"labels": {
"template": "jws31-tomcat7-mongodb-persistent-s2i",
- "xpaas": "1.4.7"
+ "xpaas": "1.4.8"
},
- "message": "A new persistent JWS application for Apache Tomcat 7 (using MongoDB) has been created in your project. The username/password for administering your JWS is ${JWS_ADMIN_USERNAME}/${JWS_ADMIN_PASSWORD}. For accessing the MongoDB database \"${DB_DATABASE}\" use the credentials ${DB_USERNAME}/${DB_PASSWORD} (Admin password is \"${DB_ADMIN_PASSWORD}\"). Please be sure to create the \"jws-service-account\" service account and the secret named \"${JWS_HTTPS_SECRET}\" containing the ${JWS_HTTPS_CERTIFICATE} file used for serving secure content.",
+ "message": "A new persistent JWS application for Apache Tomcat 7 (using MongoDB) has been created in your project. The username/password for administering your JWS is ${JWS_ADMIN_USERNAME}/${JWS_ADMIN_PASSWORD}. For accessing the MongoDB database \"${DB_DATABASE}\" use the credentials ${DB_USERNAME}/${DB_PASSWORD} (Admin password is \"${DB_ADMIN_PASSWORD}\"). Please be sure to create the secret named \"${JWS_HTTPS_SECRET}\" containing the ${JWS_HTTPS_CERTIFICATE} file used for serving secure content.",
"parameters": [
{
"displayName": "Application Name",
@@ -81,7 +81,7 @@
"displayName": "Database Volume Capacity",
"description": "Size of persistent storage for database volume.",
"name": "VOLUME_CAPACITY",
- "value": "512Mi",
+ "value": "1Gi",
"required": true
},
{
@@ -472,7 +472,6 @@
}
},
"spec": {
- "serviceAccountName": "jws-service-account",
"terminationGracePeriodSeconds": 60,
"containers": [
{
diff --git a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/jws31-tomcat7-mongodb-s2i.json b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/jws31-tomcat7-mongodb-s2i.json
index fc473f5c3..28155b34b 100644
--- a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/jws31-tomcat7-mongodb-s2i.json
+++ b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/jws31-tomcat7-mongodb-s2i.json
@@ -7,16 +7,16 @@
"openshift.io/provider-display-name": "Red Hat, Inc.",
"description": "Application template for JWS MongoDB applications built using S2I.",
"tags": "tomcat,tomcat7,java,jboss,hidden",
- "version": "1.4.7",
+ "version": "1.4.8",
"openshift.io/display-name": "JBoss Web Server 3.1 Apache Tomcat 7 + MongoDB (Ephemeral with https)"
},
"name": "jws31-tomcat7-mongodb-s2i"
},
"labels": {
"template": "jws31-tomcat7-mongodb-s2i",
- "xpaas": "1.4.7"
+ "xpaas": "1.4.8"
},
- "message": "A new JWS application for Apache Tomcat 7 (using MongoDB) has been created in your project. The username/password for administering your JWS is ${JWS_ADMIN_USERNAME}/${JWS_ADMIN_PASSWORD}. For accessing the MongoDB database \"${DB_DATABASE}\" use the credentials ${DB_USERNAME}/${DB_PASSWORD} (Admin password is \"${DB_ADMIN_PASSWORD}\"). Please be sure to create the \"jws-service-account\" service account and the secret named \"${JWS_HTTPS_SECRET}\" containing the ${JWS_HTTPS_CERTIFICATE} file used for serving secure content.",
+ "message": "A new JWS application for Apache Tomcat 7 (using MongoDB) has been created in your project. The username/password for administering your JWS is ${JWS_ADMIN_USERNAME}/${JWS_ADMIN_PASSWORD}. For accessing the MongoDB database \"${DB_DATABASE}\" use the credentials ${DB_USERNAME}/${DB_PASSWORD} (Admin password is \"${DB_ADMIN_PASSWORD}\"). Please be sure to create the secret named \"${JWS_HTTPS_SECRET}\" containing the ${JWS_HTTPS_CERTIFICATE} file used for serving secure content.",
"parameters": [
{
"displayName": "Application Name",
@@ -462,7 +462,6 @@
}
},
"spec": {
- "serviceAccountName": "jws-service-account",
"terminationGracePeriodSeconds": 60,
"containers": [
{
@@ -664,8 +663,22 @@
"name": "MONGODB_QUIET",
"value": "${MONGODB_QUIET}"
}
+ ],
+ "volumeMounts": [
+ {
+ "mountPath": "/var/lib/mongodb/data",
+ "name": "${APPLICATION_NAME}-data"
+ }
]
}
+ ],
+ "volumes": [
+ {
+ "emptyDir": {
+ "medium": ""
+ },
+ "name": "${APPLICATION_NAME}-data"
+ }
]
}
}
diff --git a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/jws31-tomcat7-mysql-persistent-s2i.json b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/jws31-tomcat7-mysql-persistent-s2i.json
index 1223acd0f..0a87c85a9 100644
--- a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/jws31-tomcat7-mysql-persistent-s2i.json
+++ b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/jws31-tomcat7-mysql-persistent-s2i.json
@@ -6,7 +6,7 @@
"iconClass": "icon-rh-tomcat",
"openshift.io/provider-display-name": "Red Hat, Inc.",
"tags": "tomcat,tomcat7,java,jboss",
- "version": "1.4.7",
+ "version": "1.4.8",
"openshift.io/display-name": "Red Hat JBoss Web Server 3.1 Apache Tomcat 7 + MySQL (with https)",
"description": "An example JBoss Web Server application with a MySQL database. For more information about using this template, see https://github.com/jboss-openshift/application-templates.",
"template.openshift.io/long-description": "This template defines resources needed to develop Red Hat JBoss Web Server 3.1 Apache Tomcat 7 based application, including a build configuration, application deployment configuration, database deployment configuration for MySQL using persistence and secure communication using https.",
@@ -18,9 +18,9 @@
},
"labels": {
"template": "jws31-tomcat7-mysql-persistent-s2i",
- "xpaas": "1.4.7"
+ "xpaas": "1.4.8"
},
- "message": "A new persistent JWS application for Apache Tomcat 7 (using MySQL) has been created in your project. The username/password for administering your JWS is ${JWS_ADMIN_USERNAME}/${JWS_ADMIN_PASSWORD}. For accessing the MySQL database \"${DB_DATABASE}\" use the credentials ${DB_USERNAME}/${DB_PASSWORD}. Please be sure to create the \"jws-service-account\" service account and the secret named \"${JWS_HTTPS_SECRET}\" containing the ${JWS_HTTPS_CERTIFICATE} file used for serving secure content.",
+ "message": "A new persistent JWS application for Apache Tomcat 7 (using MySQL) has been created in your project. The username/password for administering your JWS is ${JWS_ADMIN_USERNAME}/${JWS_ADMIN_PASSWORD}. For accessing the MySQL database \"${DB_DATABASE}\" use the credentials ${DB_USERNAME}/${DB_PASSWORD}. Please be sure to create the secret named \"${JWS_HTTPS_SECRET}\" containing the ${JWS_HTTPS_CERTIFICATE} file used for serving secure content.",
"parameters": [
{
"displayName": "Application Name",
@@ -82,7 +82,7 @@
"displayName": "Database Volume Capacity",
"description": "Size of persistent storage for database volume.",
"name": "VOLUME_CAPACITY",
- "value": "512Mi",
+ "value": "1Gi",
"required": true
},
{
@@ -477,7 +477,6 @@
}
},
"spec": {
- "serviceAccountName": "jws-service-account",
"terminationGracePeriodSeconds": 60,
"containers": [
{
diff --git a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/jws31-tomcat7-mysql-s2i.json b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/jws31-tomcat7-mysql-s2i.json
index 39becd41e..b77f0cc22 100644
--- a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/jws31-tomcat7-mysql-s2i.json
+++ b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/jws31-tomcat7-mysql-s2i.json
@@ -7,16 +7,16 @@
"openshift.io/provider-display-name": "Red Hat, Inc.",
"description": "Application template for JWS MySQL applications built using S2I.",
"tags": "tomcat,tomcat7,java,jboss,hidden",
- "version": "1.4.7",
+ "version": "1.4.8",
"openshift.io/display-name": "JBoss Web Server 3.1 Apache Tomcat 7 + MySQL (Ephemeral with https)"
},
"name": "jws31-tomcat7-mysql-s2i"
},
"labels": {
"template": "jws31-tomcat7-mysql-s2i",
- "xpaas": "1.4.7"
+ "xpaas": "1.4.8"
},
- "message": "A new JWS application for Apache Tomcat 7 (using MySQL) has been created in your project. The username/password for administering your JWS is ${JWS_ADMIN_USERNAME}/${JWS_ADMIN_PASSWORD}. For accessing the MySQL database \"${DB_DATABASE}\" use the credentials ${DB_USERNAME}/${DB_PASSWORD}. Please be sure to create the \"jws-service-account\" service account and the secret named \"${JWS_HTTPS_SECRET}\" containing the ${JWS_HTTPS_CERTIFICATE} file used for serving secure content.",
+ "message": "A new JWS application for Apache Tomcat 7 (using MySQL) has been created in your project. The username/password for administering your JWS is ${JWS_ADMIN_USERNAME}/${JWS_ADMIN_PASSWORD}. For accessing the MySQL database \"${DB_DATABASE}\" use the credentials ${DB_USERNAME}/${DB_PASSWORD}. Please be sure to create the secret named \"${JWS_HTTPS_SECRET}\" containing the ${JWS_HTTPS_CERTIFICATE} file used for serving secure content.",
"parameters": [
{
"displayName": "Application Name",
@@ -466,7 +466,6 @@
}
},
"spec": {
- "serviceAccountName": "jws-service-account",
"terminationGracePeriodSeconds": 60,
"containers": [
{
@@ -667,8 +666,22 @@
"name": "MYSQL_AIO",
"value": "${MYSQL_AIO}"
}
+ ],
+ "volumeMounts": [
+ {
+ "mountPath": "/var/lib/mysql/data",
+ "name": "${APPLICATION_NAME}-data"
+ }
]
}
+ ],
+ "volumes": [
+ {
+ "emptyDir": {
+ "medium": ""
+ },
+ "name": "${APPLICATION_NAME}-data"
+ }
]
}
}
diff --git a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/jws31-tomcat7-postgresql-persistent-s2i.json b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/jws31-tomcat7-postgresql-persistent-s2i.json
index 77f4f8c9f..4fabc2cb4 100644
--- a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/jws31-tomcat7-postgresql-persistent-s2i.json
+++ b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/jws31-tomcat7-postgresql-persistent-s2i.json
@@ -6,7 +6,7 @@
"iconClass": "icon-rh-tomcat",
"openshift.io/provider-display-name": "Red Hat, Inc.",
"tags": "tomcat,tomcat7,java,jboss",
- "version": "1.4.7",
+ "version": "1.4.8",
"openshift.io/display-name": "JBoss Web Server 3.1 Apache Tomcat 7 + PostgreSQL (with https)",
"description": "An example JBoss Web Server application with a PostgreSQL database. For more information about using this template, see https://github.com/jboss-openshift/application-templates.",
"template.openshift.io/long-description": "This template defines resources needed to develop Red Hat JBoss Web Server 3.1 Apache Tomcat 8 based application, including a build configuration, application deployment configuration, database deployment configuration for PostgreSQL using persistence and secure communication using https.",
@@ -17,9 +17,9 @@
},
"labels": {
"template": "jws31-tomcat7-postgresql-persistent-s2i",
- "xpaas": "1.4.7"
+ "xpaas": "1.4.8"
},
- "message": "A new persistent JWS application for Apache Tomcat 7 (using PostgreSQL) has been created in your project. The username/password for administering your JWS is ${JWS_ADMIN_USERNAME}/${JWS_ADMIN_PASSWORD}. For accessing the PostgreSQL database \"${DB_DATABASE}\" use the credentials ${DB_USERNAME}/${DB_PASSWORD}. Please be sure to create the \"jws-service-account\" service account and the secret named \"${JWS_HTTPS_SECRET}\" containing the ${JWS_HTTPS_CERTIFICATE} file used for serving secure content.",
+ "message": "A new persistent JWS application for Apache Tomcat 7 (using PostgreSQL) has been created in your project. The username/password for administering your JWS is ${JWS_ADMIN_USERNAME}/${JWS_ADMIN_PASSWORD}. For accessing the PostgreSQL database \"${DB_DATABASE}\" use the credentials ${DB_USERNAME}/${DB_PASSWORD}. Please be sure to create the secret named \"${JWS_HTTPS_SECRET}\" containing the ${JWS_HTTPS_CERTIFICATE} file used for serving secure content.",
"parameters": [
{
"displayName": "Application Name",
@@ -81,7 +81,7 @@
"displayName": "Database Volume Capacity",
"description": "Size of persistent storage for database volume.",
"name": "VOLUME_CAPACITY",
- "value": "512Mi",
+ "value": "1Gi",
"required": true
},
{
@@ -458,7 +458,6 @@
}
},
"spec": {
- "serviceAccountName": "jws-service-account",
"terminationGracePeriodSeconds": 60,
"containers": [
{
diff --git a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/jws31-tomcat7-postgresql-s2i.json b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/jws31-tomcat7-postgresql-s2i.json
index 6d1d7aef7..64eaff560 100644
--- a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/jws31-tomcat7-postgresql-s2i.json
+++ b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/jws31-tomcat7-postgresql-s2i.json
@@ -7,16 +7,16 @@
"openshift.io/provider-display-name": "Red Hat, Inc.",
"description": "Application template for JWS PostgreSQL applications built using S2I.",
"tags": "tomcat,tomcat7,java,jboss,hidden",
- "version": "1.4.7",
+ "version": "1.4.8",
"openshift.io/display-name": "JBoss Web Server 3.1 Apache Tomcat 7 + PostgreSQL (Ephemeral with https)"
},
"name": "jws31-tomcat7-postgresql-s2i"
},
"labels": {
"template": "jws31-tomcat7-postgresql-s2i",
- "xpaas": "1.4.7"
+ "xpaas": "1.4.8"
},
- "message": "A new JWS application for Apache Tomcat 7 (using PostgreSQL) has been created in your project. The username/password for administering your JWS is ${JWS_ADMIN_USERNAME}/${JWS_ADMIN_PASSWORD}. For accessing the PostgreSQL database \"${DB_DATABASE}\" use the credentials ${DB_USERNAME}/${DB_PASSWORD}. Please be sure to create the \"jws-service-account\" service account and the secret named \"${JWS_HTTPS_SECRET}\" containing the ${JWS_HTTPS_CERTIFICATE} file used for serving secure content.",
+ "message": "A new JWS application for Apache Tomcat 7 (using PostgreSQL) has been created in your project. The username/password for administering your JWS is ${JWS_ADMIN_USERNAME}/${JWS_ADMIN_PASSWORD}. For accessing the PostgreSQL database \"${DB_DATABASE}\" use the credentials ${DB_USERNAME}/${DB_PASSWORD}. Please be sure to create the secret named \"${JWS_HTTPS_SECRET}\" containing the ${JWS_HTTPS_CERTIFICATE} file used for serving secure content.",
"parameters": [
{
"displayName": "Application Name",
@@ -448,7 +448,6 @@
}
},
"spec": {
- "serviceAccountName": "jws-service-account",
"terminationGracePeriodSeconds": 60,
"containers": [
{
@@ -641,8 +640,22 @@
"name": "POSTGRESQL_SHARED_BUFFERS",
"value": "${POSTGRESQL_SHARED_BUFFERS}"
}
+ ],
+ "volumeMounts": [
+ {
+ "mountPath": "/var/lib/pgsql/data",
+ "name": "${APPLICATION_NAME}-data"
+ }
]
}
+ ],
+ "volumes": [
+ {
+ "emptyDir": {
+ "medium": ""
+ },
+ "name": "${APPLICATION_NAME}-data"
+ }
]
}
}
diff --git a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/jws31-tomcat8-basic-s2i.json b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/jws31-tomcat8-basic-s2i.json
index 9e7dc3488..5cc2a565f 100644
--- a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/jws31-tomcat8-basic-s2i.json
+++ b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/jws31-tomcat8-basic-s2i.json
@@ -6,7 +6,7 @@
"iconClass": "icon-rh-tomcat",
"openshift.io/provider-display-name": "Red Hat, Inc.",
"tags": "tomcat,tomcat8,java,jboss",
- "version": "1.4.7",
+ "version": "1.4.8",
"openshift.io/display-name": "JBoss Web Server 3.1 Apache Tomcat 8 (no https)",
"description": "An example JBoss Web Server application. For more information about using this template, see https://github.com/jboss-openshift/application-templates.",
"template.openshift.io/long-description": "This template defines resources needed to develop Red Hat JBoss Web Server 3.1 Apache Tomcat 8 based application, including a build configuration, and an application deployment configuration.",
@@ -17,7 +17,7 @@
},
"labels": {
"template": "jws31-tomcat8-basic-s2i",
- "xpaas": "1.4.7"
+ "xpaas": "1.4.8"
},
"message": "A new JWS application for Apache Tomcat 8 has been created in your project. The username/password for administering your JWS is ${JWS_ADMIN_USERNAME}/${JWS_ADMIN_PASSWORD}.",
"parameters": [
diff --git a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/jws31-tomcat8-https-s2i.json b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/jws31-tomcat8-https-s2i.json
index 8fd5d9fab..9d197649b 100644
--- a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/jws31-tomcat8-https-s2i.json
+++ b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/jws31-tomcat8-https-s2i.json
@@ -6,7 +6,7 @@
"iconClass": "icon-rh-tomcat",
"openshift.io/provider-display-name": "Red Hat, Inc.",
"tags": "tomcat,tomcat8,java,jboss,hidden",
- "version": "1.4.7",
+ "version": "1.4.8",
"openshift.io/display-name": "JBoss Web Server 3.1 Apache Tomcat 8 (with https)",
"description": "An example JBoss Web Server application. For more information about using this template, see https://github.com/jboss-openshift/application-templates.",
"template.openshift.io/long-description": "This template defines resources needed to develop Red Hat JBoss Web Server 3.1 Apache Tomcat 8 based application, including a build configuration, application deployment configuration, and secure communication using https.",
@@ -18,9 +18,9 @@
},
"labels": {
"template": "jws31-tomcat8-https-s2i",
- "xpaas": "1.4.7"
+ "xpaas": "1.4.8"
},
- "message": "A new JWS application for Apache Tomcat 8 has been created in your project. The username/password for administering your JWS is ${JWS_ADMIN_USERNAME}/${JWS_ADMIN_PASSWORD}. Please be sure to create the \"jws-service-account\" service account and the secret named \"${JWS_HTTPS_SECRET}\" containing the ${JWS_HTTPS_CERTIFICATE} file used for serving secure content.",
+ "message": "A new JWS application for Apache Tomcat 8 has been created in your project. The username/password for administering your JWS is ${JWS_ADMIN_USERNAME}/${JWS_ADMIN_PASSWORD}. Please be sure to create the secret named \"${JWS_HTTPS_SECRET}\" containing the ${JWS_HTTPS_CERTIFICATE} file used for serving secure content.",
"parameters": [
{
"displayName": "Application Name",
@@ -359,7 +359,6 @@
}
},
"spec": {
- "serviceAccountName": "jws-service-account",
"terminationGracePeriodSeconds": 60,
"containers": [
{
diff --git a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/jws31-tomcat8-mongodb-persistent-s2i.json b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/jws31-tomcat8-mongodb-persistent-s2i.json
index f4b11ccfa..51bd9e7cc 100644
--- a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/jws31-tomcat8-mongodb-persistent-s2i.json
+++ b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/jws31-tomcat8-mongodb-persistent-s2i.json
@@ -4,7 +4,7 @@
"metadata": {
"annotations": {
"tags": "tomcat,tomcat8,java,jboss",
- "version": "1.4.7",
+ "version": "1.4.8",
"iconClass": "icon-rh-tomcat",
"openshift.io/provider-display-name": "Red Hat, Inc.",
"openshift.io/display-name": "JBoss Web Server 3.1 Apache Tomcat 8 + MongoDB (with https)",
@@ -16,10 +16,10 @@
},
"name": "jws31-tomcat8-mongodb-persistent-s2i"
},
- "message": "A new persistent JWS application for Apache Tomcat 8 (using MongoDB) has been created in your project. The username/password for administering your JWS is ${JWS_ADMIN_USERNAME}/${JWS_ADMIN_PASSWORD}. For accessing the MongoDB database \"${DB_DATABASE}\" use the credentials ${DB_USERNAME}/${DB_PASSWORD} (Admin password is \"${DB_ADMIN_PASSWORD}\"). Please be sure to create the \"jws-service-account\" service account and the secret named \"${JWS_HTTPS_SECRET}\" containing the ${JWS_HTTPS_CERTIFICATE} file used for serving secure content.",
+ "message": "A new persistent JWS application for Apache Tomcat 8 (using MongoDB) has been created in your project. The username/password for administering your JWS is ${JWS_ADMIN_USERNAME}/${JWS_ADMIN_PASSWORD}. For accessing the MongoDB database \"${DB_DATABASE}\" use the credentials ${DB_USERNAME}/${DB_PASSWORD} (Admin password is \"${DB_ADMIN_PASSWORD}\"). Please be sure to create the secret named \"${JWS_HTTPS_SECRET}\" containing the ${JWS_HTTPS_CERTIFICATE} file used for serving secure content.",
"labels": {
"template": "jws31-tomcat8-mongodb-persistent-s2i",
- "xpaas": "1.4.7"
+ "xpaas": "1.4.8"
},
"parameters": [
{
@@ -82,7 +82,7 @@
"displayName": "Database Volume Capacity",
"description": "Size of persistent storage for database volume.",
"name": "VOLUME_CAPACITY",
- "value": "512Mi",
+ "value": "1Gi",
"required": true
},
{
@@ -473,7 +473,6 @@
}
},
"spec": {
- "serviceAccountName": "jws-service-account",
"terminationGracePeriodSeconds": 60,
"containers": [
{
diff --git a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/jws31-tomcat8-mongodb-s2i.json b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/jws31-tomcat8-mongodb-s2i.json
index e2f69f157..9f2beef31 100644
--- a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/jws31-tomcat8-mongodb-s2i.json
+++ b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/jws31-tomcat8-mongodb-s2i.json
@@ -7,16 +7,16 @@
"openshift.io/provider-display-name": "Red Hat, Inc.",
"description": "Application template for JWS MongoDB applications built using S2I.",
"tags": "tomcat,tomcat8,java,jboss,hidden",
- "version": "1.4.7",
+ "version": "1.4.8",
"openshift.io/display-name": "JBoss Web Server 3.1 Apache Tomcat 8 + MongoDB (Ephemeral with https)"
},
"name": "jws31-tomcat8-mongodb-s2i"
},
"labels": {
"template": "jws31-tomcat8-mongodb-s2i",
- "xpaas": "1.4.7"
+ "xpaas": "1.4.8"
},
- "message": "A new JWS application for Apache Tomcat 8 (using MongoDB) has been created in your project. The username/password for administering your JWS is ${JWS_ADMIN_USERNAME}/${JWS_ADMIN_PASSWORD}. For accessing the MongoDB database \"${DB_DATABASE}\" use the credentials ${DB_USERNAME}/${DB_PASSWORD} (Admin password is \"${DB_ADMIN_PASSWORD}\"). Please be sure to create the \"jws-service-account\" service account and the secret named \"${JWS_HTTPS_SECRET}\" containing the ${JWS_HTTPS_CERTIFICATE} file used for serving secure content.",
+ "message": "A new JWS application for Apache Tomcat 8 (using MongoDB) has been created in your project. The username/password for administering your JWS is ${JWS_ADMIN_USERNAME}/${JWS_ADMIN_PASSWORD}. For accessing the MongoDB database \"${DB_DATABASE}\" use the credentials ${DB_USERNAME}/${DB_PASSWORD} (Admin password is \"${DB_ADMIN_PASSWORD}\"). Please be sure to create the secret named \"${JWS_HTTPS_SECRET}\" containing the ${JWS_HTTPS_CERTIFICATE} file used for serving secure content.",
"parameters": [
{
"displayName": "Application Name",
@@ -462,7 +462,6 @@
}
},
"spec": {
- "serviceAccountName": "jws-service-account",
"terminationGracePeriodSeconds": 60,
"containers": [
{
@@ -664,8 +663,22 @@
"name": "MONGODB_QUIET",
"value": "${MONGODB_QUIET}"
}
+ ],
+ "volumeMounts": [
+ {
+ "mountPath": "/var/lib/mongodb/data",
+ "name": "${APPLICATION_NAME}-data"
+ }
]
}
+ ],
+ "volumes": [
+ {
+ "emptyDir": {
+ "medium": ""
+ },
+ "name": "${APPLICATION_NAME}-data"
+ }
]
}
}
diff --git a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/jws31-tomcat8-mysql-persistent-s2i.json b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/jws31-tomcat8-mysql-persistent-s2i.json
index 579071cb1..5213cc261 100644
--- a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/jws31-tomcat8-mysql-persistent-s2i.json
+++ b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/jws31-tomcat8-mysql-persistent-s2i.json
@@ -6,7 +6,7 @@
"iconClass": "icon-rh-tomcat",
"openshift.io/provider-display-name": "Red Hat, Inc.",
"tags": "tomcat,tomcat8,java,jboss",
- "version": "1.4.7",
+ "version": "1.4.8",
"openshift.io/display-name": "JBoss Web Server 3.1 Apache Tomcat 8 + MySQL (with https)",
"description": "An example JBoss Web Server application with a MySQL database. For more information about using this template, see https://github.com/jboss-openshift/application-templates.",
"template.openshift.io/long-description": "This template defines resources needed to develop Red Hat JBoss Web Server 3.1 Apache Tomcat 8 based application, including a build configuration, application deployment configuration, database deployment configuration for MySQL using persistence and secure communication using https.",
@@ -17,9 +17,9 @@
},
"labels": {
"template": "jws31-tomcat8-mysql-persistent-s2i",
- "xpaas": "1.4.7"
+ "xpaas": "1.4.8"
},
- "message": "A new persistent JWS application for Apache Tomcat 8 (using MySQL) has been created in your project. The username/password for administering your JWS is ${JWS_ADMIN_USERNAME}/${JWS_ADMIN_PASSWORD}. For accessing the MySQL database \"${DB_DATABASE}\" use the credentials ${DB_USERNAME}/${DB_PASSWORD}. Please be sure to create the \"jws-service-account\" service account and the secret named \"${JWS_HTTPS_SECRET}\" containing the ${JWS_HTTPS_CERTIFICATE} file used for serving secure content.",
+ "message": "A new persistent JWS application for Apache Tomcat 8 (using MySQL) has been created in your project. The username/password for administering your JWS is ${JWS_ADMIN_USERNAME}/${JWS_ADMIN_PASSWORD}. For accessing the MySQL database \"${DB_DATABASE}\" use the credentials ${DB_USERNAME}/${DB_PASSWORD}. Please be sure to create the secret named \"${JWS_HTTPS_SECRET}\" containing the ${JWS_HTTPS_CERTIFICATE} file used for serving secure content.",
"parameters": [
{
"displayName": "Application Name",
@@ -81,7 +81,7 @@
"displayName": "Database Volume Capacity",
"description": "Size of persistent storage for database volume.",
"name": "VOLUME_CAPACITY",
- "value": "512Mi",
+ "value": "1Gi",
"required": true
},
{
@@ -476,7 +476,6 @@
}
},
"spec": {
- "serviceAccountName": "jws-service-account",
"terminationGracePeriodSeconds": 60,
"containers": [
{
diff --git a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/jws31-tomcat8-mysql-s2i.json b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/jws31-tomcat8-mysql-s2i.json
index e84d61608..1ccd4fa37 100644
--- a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/jws31-tomcat8-mysql-s2i.json
+++ b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/jws31-tomcat8-mysql-s2i.json
@@ -7,16 +7,16 @@
"openshift.io/provider-display-name": "Red Hat, Inc.",
"description": "Application template for JWS MySQL applications built using S2I.",
"tags": "tomcat,tomcat8,java,jboss,hidden",
- "version": "1.4.7",
+ "version": "1.4.8",
"openshift.io/display-name": "JBoss Web Server 3.1 Apache Tomcat 8 + MySQL (Ephemeral with https)"
},
"name": "jws31-tomcat8-mysql-s2i"
},
"labels": {
"template": "jws31-tomcat8-mysql-s2i",
- "xpaas": "1.4.7"
+ "xpaas": "1.4.8"
},
- "message": "A new JWS application for Apache Tomcat 8 (using MySQL) has been created in your project. The username/password for administering your JWS is ${JWS_ADMIN_USERNAME}/${JWS_ADMIN_PASSWORD}. For accessing the MySQL database \"${DB_DATABASE}\" use the credentials ${DB_USERNAME}/${DB_PASSWORD}. Please be sure to create the \"jws-service-account\" service account and the secret named \"${JWS_HTTPS_SECRET}\" containing the ${JWS_HTTPS_CERTIFICATE} file used for serving secure content.",
+ "message": "A new JWS application for Apache Tomcat 8 (using MySQL) has been created in your project. The username/password for administering your JWS is ${JWS_ADMIN_USERNAME}/${JWS_ADMIN_PASSWORD}. For accessing the MySQL database \"${DB_DATABASE}\" use the credentials ${DB_USERNAME}/${DB_PASSWORD}. Please be sure to create the secret named \"${JWS_HTTPS_SECRET}\" containing the ${JWS_HTTPS_CERTIFICATE} file used for serving secure content.",
"parameters": [
{
"displayName": "Application Name",
@@ -466,7 +466,6 @@
}
},
"spec": {
- "serviceAccountName": "jws-service-account",
"terminationGracePeriodSeconds": 60,
"containers": [
{
@@ -667,8 +666,22 @@
"name": "MYSQL_AIO",
"value": "${MYSQL_AIO}"
}
+ ],
+ "volumeMounts": [
+ {
+ "mountPath": "/var/lib/mysql/data",
+ "name": "${APPLICATION_NAME}-data"
+ }
]
}
+ ],
+ "volumes": [
+ {
+ "emptyDir": {
+ "medium": ""
+ },
+ "name": "${APPLICATION_NAME}-data"
+ }
]
}
}
diff --git a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/jws31-tomcat8-postgresql-persistent-s2i.json b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/jws31-tomcat8-postgresql-persistent-s2i.json
index 83a6ca19b..86d8c0fa8 100644
--- a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/jws31-tomcat8-postgresql-persistent-s2i.json
+++ b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/jws31-tomcat8-postgresql-persistent-s2i.json
@@ -7,16 +7,16 @@
"openshift.io/provider-display-name": "Red Hat, Inc.",
"description": "Application template for JWS PostgreSQL applications with persistent storage built using S2I.",
"tags": "tomcat,tomcat8,java,jboss",
- "version": "1.4.7",
+ "version": "1.4.8",
"openshift.io/display-name": "JBoss Web Server 3.1 Apache Tomcat 8 + PostgreSQL (with https)"
},
"name": "jws31-tomcat8-postgresql-persistent-s2i"
},
"labels": {
"template": "jws31-tomcat8-postgresql-persistent-s2i",
- "xpaas": "1.4.7"
+ "xpaas": "1.4.8"
},
- "message": "A new persistent JWS application for Apache Tomcat 8 (using PostgreSQL) has been created in your project. The username/password for administering your JWS is ${JWS_ADMIN_USERNAME}/${JWS_ADMIN_PASSWORD}. For accessing the PostgreSQL database \"${DB_DATABASE}\" use the credentials ${DB_USERNAME}/${DB_PASSWORD}. Please be sure to create the \"jws-service-account\" service account and the secret named \"${JWS_HTTPS_SECRET}\" containing the ${JWS_HTTPS_CERTIFICATE} file used for serving secure content.",
+ "message": "A new persistent JWS application for Apache Tomcat 8 (using PostgreSQL) has been created in your project. The username/password for administering your JWS is ${JWS_ADMIN_USERNAME}/${JWS_ADMIN_PASSWORD}. For accessing the PostgreSQL database \"${DB_DATABASE}\" use the credentials ${DB_USERNAME}/${DB_PASSWORD}. Please be sure to create the secret named \"${JWS_HTTPS_SECRET}\" containing the ${JWS_HTTPS_CERTIFICATE} file used for serving secure content.",
"parameters": [
{
"displayName": "Application Name",
@@ -78,7 +78,7 @@
"displayName": "Database Volume Capacity",
"description": "Size of persistent storage for database volume.",
"name": "VOLUME_CAPACITY",
- "value": "512Mi",
+ "value": "1Gi",
"required": true
},
{
@@ -455,7 +455,6 @@
}
},
"spec": {
- "serviceAccountName": "jws-service-account",
"terminationGracePeriodSeconds": 60,
"containers": [
{
diff --git a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/jws31-tomcat8-postgresql-s2i.json b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/jws31-tomcat8-postgresql-s2i.json
index e28cf8a04..b77234318 100644
--- a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/jws31-tomcat8-postgresql-s2i.json
+++ b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/jws31-tomcat8-postgresql-s2i.json
@@ -7,16 +7,16 @@
"openshift.io/provider-display-name": "Red Hat, Inc.",
"description": "Application template for JWS PostgreSQL applications built using S2I.",
"tags": "tomcat,tomcat8,java,jboss,hidden",
- "version": "1.4.7",
+ "version": "1.4.8",
"openshift.io/display-name": "JBoss Web Server 3.0 Apache Tomcat 8 + PostgreSQL (Ephemeral with https)"
},
"name": "jws31-tomcat8-postgresql-s2i"
},
"labels": {
"template": "jws31-tomcat8-postgresql-s2i",
- "xpaas": "1.4.7"
+ "xpaas": "1.4.8"
},
- "message": "A new JWS application for Apache Tomcat 8 (using PostgreSQL) has been created in your project. The username/password for administering your JWS is ${JWS_ADMIN_USERNAME}/${JWS_ADMIN_PASSWORD}. For accessing the PostgreSQL database \"${DB_DATABASE}\" use the credentials ${DB_USERNAME}/${DB_PASSWORD}. Please be sure to create the \"jws-service-account\" service account and the secret named \"${JWS_HTTPS_SECRET}\" containing the ${JWS_HTTPS_CERTIFICATE} file used for serving secure content.",
+ "message": "A new JWS application for Apache Tomcat 8 (using PostgreSQL) has been created in your project. The username/password for administering your JWS is ${JWS_ADMIN_USERNAME}/${JWS_ADMIN_PASSWORD}. For accessing the PostgreSQL database \"${DB_DATABASE}\" use the credentials ${DB_USERNAME}/${DB_PASSWORD}. Please be sure to create the secret named \"${JWS_HTTPS_SECRET}\" containing the ${JWS_HTTPS_CERTIFICATE} file used for serving secure content.",
"parameters": [
{
"displayName": "Application Name",
@@ -448,7 +448,6 @@
}
},
"spec": {
- "serviceAccountName": "jws-service-account",
"containers": [
{
"name": "${APPLICATION_NAME}",
@@ -639,8 +638,22 @@
"name": "POSTGRESQL_SHARED_BUFFERS",
"value": "${POSTGRESQL_SHARED_BUFFERS}"
}
+ ],
+ "volumeMounts": [
+ {
+ "mountPath": "/var/lib/pgsql/data",
+ "name": "${APPLICATION_NAME}-data"
+ }
]
}
+ ],
+ "volumes": [
+ {
+ "emptyDir": {
+ "medium": ""
+ },
+ "name": "${APPLICATION_NAME}-data"
+ }
]
}
}
diff --git a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/karaf2-camel-amq-template.json b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/karaf2-camel-amq-template.json
index aad649f84..3415bba4a 100644
--- a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/karaf2-camel-amq-template.json
+++ b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/karaf2-camel-amq-template.json
@@ -3,7 +3,7 @@
"kind": "Template",
"metadata": {
"annotations": {
- "description": "Camel route using ActiveMQ in Karaf container. This quickstart shows how to use Camel in a Karaf Container using Blueprint to connect to the A-MQ xPaaS message broker on OpenShift that should already be installed, one simple way to run a A-MQ service is following the documentation of the A-MQ xPaaS image for OpenShift related to the amq62-basic template.",
+ "description": "Camel route using ActiveMQ in Karaf container. This quickstart shows how to use Camel in a Karaf Container using Blueprint to connect to the A-MQ xPaaS message broker on OpenShift that should already be installed, one simple way to run a A-MQ service is following the documentation of the A-MQ xPaaS image for OpenShift related to the amq63-basic template.",
"tags": "quickstart,java,karaf,fis",
"iconClass": "icon-jboss",
"version": "2.0"
@@ -31,7 +31,7 @@
{
"name": "GIT_REF",
"displayName": "Git Reference",
- "value": "karaf2-camel-amq-1.0.0.redhat-000019",
+ "value": "karaf2-camel-amq-1.0.0.redhat-000022",
"description": "Set this to a branch name, tag or other ref of your repository if you are not using the default branch."
},
{
@@ -49,7 +49,7 @@
{
"name": "APP_VERSION",
"displayName": "Application Version",
- "value": "1.0.0.redhat-000019",
+ "value": "1.0.0.redhat-000022",
"description": "The application version."
},
{
diff --git a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/karaf2-camel-log-template.json b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/karaf2-camel-log-template.json
index 38b7bc249..188ae1734 100644
--- a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/karaf2-camel-log-template.json
+++ b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/karaf2-camel-log-template.json
@@ -31,7 +31,7 @@
{
"name": "GIT_REF",
"displayName": "Git Reference",
- "value": "karaf2-camel-log-1.0.0.redhat-000019",
+ "value": "karaf2-camel-log-1.0.0.redhat-000022",
"description": "Set this to a branch name, tag or other ref of your repository if you are not using the default branch."
},
{
@@ -49,7 +49,7 @@
{
"name": "APP_VERSION",
"displayName": "Application Version",
- "value": "1.0.0.redhat-000019",
+ "value": "1.0.0.redhat-000022",
"description": "The application version."
},
{
diff --git a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/karaf2-camel-rest-sql-template.json b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/karaf2-camel-rest-sql-template.json
index 6d9573e5b..0ed72f39c 100644
--- a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/karaf2-camel-rest-sql-template.json
+++ b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/karaf2-camel-rest-sql-template.json
@@ -31,7 +31,7 @@
{
"name": "GIT_REF",
"displayName": "Git Reference",
- "value": "karaf2-camel-rest-sql-1.0.0.redhat-000019",
+ "value": "karaf2-camel-rest-sql-1.0.0.redhat-000022",
"description": "Set this to a branch name, tag or other ref of your repository if you are not using the default branch."
},
{
@@ -73,7 +73,7 @@
{
"name": "APP_VERSION",
"displayName": "Application Version",
- "value": "1.0.0.redhat-000019",
+ "value": "1.0.0.redhat-000022",
"description": "The application version."
},
{
diff --git a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/karaf2-cxf-rest-template.json b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/karaf2-cxf-rest-template.json
index fdc0c00e5..3a34eebae 100644
--- a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/karaf2-cxf-rest-template.json
+++ b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/karaf2-cxf-rest-template.json
@@ -31,7 +31,7 @@
{
"name": "GIT_REF",
"displayName": "Git Reference",
- "value": "karaf2-cxf-rest-1.0.0.redhat-000019",
+ "value": "karaf2-cxf-rest-1.0.0.redhat-000022",
"description": "Set this to a branch name, tag or other ref of your repository if you are not using the default branch."
},
{
@@ -49,7 +49,7 @@
{
"name": "APP_VERSION",
"displayName": "Application Version",
- "value": "1.0.0.redhat-000019",
+ "value": "1.0.0.redhat-000022",
"description": "The application version."
},
{
diff --git a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/openjdk18-web-basic-s2i.json b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/openjdk18-web-basic-s2i.json
index 6336f0398..466dfb984 100644
--- a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/openjdk18-web-basic-s2i.json
+++ b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/openjdk18-web-basic-s2i.json
@@ -5,7 +5,7 @@
"annotations": {
"iconClass": "icon-rh-openjdk",
"tags": "java",
- "version": "1.4.7",
+ "version": "1.4.8",
"openshift.io/display-name": "OpenJDK 8",
"openshift.io/provider-display-name": "Red Hat, Inc.",
"description": "An example Java application using OpenJDK 8. For more information about using this template, see https://github.com/jboss-openshift/application-templates.",
@@ -17,7 +17,7 @@
},
"labels": {
"template": "openjdk18-web-basic-s2i",
- "xpaas": "1.4.7"
+ "xpaas": "1.4.8"
},
"message": "A new java application has been created in your project.",
"parameters": [
diff --git a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/processserver64-amq-mysql-persistent-s2i.json b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/processserver64-amq-mysql-persistent-s2i.json
index 9ef04ae71..ec1619137 100644
--- a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/processserver64-amq-mysql-persistent-s2i.json
+++ b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/processserver64-amq-mysql-persistent-s2i.json
@@ -5,7 +5,7 @@
"annotations": {
"iconClass": "icon-processserver",
"tags": "processserver,jboss",
- "version": "1.4.7",
+ "version": "1.4.8",
"openshift.io/display-name": "JBoss BPM Suite 6.4 intelligent process server + A-MQ + MySQL (with https)",
"openshift.io/provider-display-name": "Red Hat, Inc.",
"description": "An example BPM Suite application with A-MQ and a MySQL database. For more information about using this template, see https://github.com/jboss-openshift/application-templates.",
@@ -17,9 +17,9 @@
},
"labels": {
"template": "processserver64-amq-mysql-persistent-s2i",
- "xpaas": "1.4.7"
+ "xpaas": "1.4.8"
},
- "message": "A new persistent BPMS application (using MySQL and A-MQ) has been created in your project. The username/password for accessing the KIE Server REST or JMS interface is ${KIE_SERVER_USER}/${KIE_SERVER_PASSWORD}. For accessing the MySQL database \"${DB_DATABASE}\" use the credentials ${DB_USERNAME}/${DB_PASSWORD}. And for the A-MQ service use the credentials ${MQ_USERNAME}/${MQ_PASSWORD}. Please be sure to create the \"processserver-service-account\" service account and the secret named \"${HTTPS_SECRET}\" containing the ${HTTPS_KEYSTORE} file used for serving secure content.",
+ "message": "A new persistent BPMS application (using MySQL and A-MQ) has been created in your project. The username/password for accessing the KIE Server REST or JMS interface is ${KIE_SERVER_USER}/${KIE_SERVER_PASSWORD}. For accessing the MySQL database \"${DB_DATABASE}\" use the credentials ${DB_USERNAME}/${DB_PASSWORD}. And for the A-MQ service use the credentials ${MQ_USERNAME}/${MQ_PASSWORD}. Please be sure to create the secret named \"${HTTPS_SECRET}\" containing the ${HTTPS_KEYSTORE} file used for serving secure content.",
"parameters": [
{
"displayName": "KIE Container Deployment",
@@ -152,7 +152,7 @@
"displayName": "Database Volume Capacity",
"description": "Size of persistent storage for database volume.",
"name": "VOLUME_CAPACITY",
- "value": "512Mi",
+ "value": "1Gi",
"required": true
},
{
@@ -302,7 +302,7 @@
"displayName": "A-MQ Mesh Discovery Type",
"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",
+ "value": "dns",
"required": false
},
{
@@ -354,6 +354,12 @@
"name": "MYSQL_IMAGE_STREAM_TAG",
"value": "5.7",
"required": true
+ },
+ {
+ "description": "Container memory limit",
+ "name": "MEMORY_LIMIT",
+ "value": "1Gi",
+ "required": false
}
],
"objects": [
@@ -456,6 +462,32 @@
}
},
{
+ "kind": "Service",
+ "apiVersion": "v1",
+ "spec": {
+ "clusterIP": "None",
+ "ports": [
+ {
+ "name": "mesh",
+ "port": 61616
+ }
+ ],
+ "selector": {
+ "deploymentConfig": "${APPLICATION_NAME}-amq"
+ }
+ },
+ "metadata": {
+ "name": "${APPLICATION_NAME}-amq-mesh",
+ "labels": {
+ "application": "${APPLICATION_NAME}"
+ },
+ "annotations": {
+ "service.alpha.kubernetes.io/tolerate-unready-endpoints": "true",
+ "description": "Supports node discovery for mesh formation."
+ }
+ }
+ },
+ {
"kind": "Route",
"apiVersion": "v1",
"id": "${APPLICATION_NAME}-http",
@@ -547,7 +579,7 @@
"from": {
"kind": "ImageStreamTag",
"namespace": "${IMAGE_STREAM_NAMESPACE}",
- "name": "jboss-processserver64-openshift:1.1"
+ "name": "jboss-processserver64-openshift:1.2"
}
}
},
@@ -624,13 +656,17 @@
}
},
"spec": {
- "serviceAccountName": "processserver-service-account",
"terminationGracePeriodSeconds": 60,
"containers": [
{
"name": "${APPLICATION_NAME}",
"image": "${APPLICATION_NAME}",
"imagePullPolicy": "Always",
+ "resources": {
+ "limits": {
+ "memory": "${MEMORY_LIMIT}"
+ }
+ },
"volumeMounts": [
{
"name": "processserver-keystore-volume",
@@ -645,7 +681,8 @@
"-c",
"/opt/eap/bin/livenessProbe.sh"
]
- }
+ },
+ "initialDelaySeconds": 60
},
"readinessProbe": {
"exec": {
@@ -1000,7 +1037,7 @@
"from": {
"kind": "ImageStreamTag",
"namespace": "${IMAGE_STREAM_NAMESPACE}",
- "name": "jboss-amq-63:1.2"
+ "name": "jboss-amq-63:1.3"
}
}
},
@@ -1107,7 +1144,7 @@
},
{
"name": "AMQ_MESH_SERVICE_NAME",
- "value": "${APPLICATION_NAME}-amq-tcp"
+ "value": "${APPLICATION_NAME}-amq-mesh"
},
{
"name": "AMQ_MESH_SERVICE_NAMESPACE",
diff --git a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/processserver64-amq-mysql-s2i.json b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/processserver64-amq-mysql-s2i.json
index 4cb45db42..0deb96c82 100644
--- a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/processserver64-amq-mysql-s2i.json
+++ b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/processserver64-amq-mysql-s2i.json
@@ -5,7 +5,7 @@
"annotations": {
"iconClass": "icon-processserver",
"tags": "processserver,jboss,hidden",
- "version": "1.4.7",
+ "version": "1.4.8",
"openshift.io/display-name": "JBoss BPM Suite 6.4 intelligent process server + A-MQ + MySQL (Ephemeral with https)",
"openshift.io/provider-display-name": "Red Hat, Inc.",
"description": "An example BPM Suite application with A-MQ and a MySQL database. For more information about using this template, see https://github.com/jboss-openshift/application-templates.",
@@ -17,9 +17,9 @@
},
"labels": {
"template": "processserver64-amq-mysql-s2i",
- "xpaas": "1.4.7"
+ "xpaas": "1.4.8"
},
- "message": "A new BPMS application (using MySQL and A-MQ) has been created in your project. The username/password for accessing the KIE Server REST or JMS interface is ${KIE_SERVER_USER}/${KIE_SERVER_PASSWORD}. For accessing the MySQL database \"${DB_DATABASE}\" use the credentials ${DB_USERNAME}/${DB_PASSWORD}. And for the A-MQ service use the credentials ${MQ_USERNAME}/${MQ_PASSWORD}. Please be sure to create the \"processserver-service-account\" service account and the secret named \"${HTTPS_SECRET}\" containing the ${HTTPS_KEYSTORE} file used for serving secure content.",
+ "message": "A new BPMS application (using MySQL and A-MQ) has been created in your project. The username/password for accessing the KIE Server REST or JMS interface is ${KIE_SERVER_USER}/${KIE_SERVER_PASSWORD}. For accessing the MySQL database \"${DB_DATABASE}\" use the credentials ${DB_USERNAME}/${DB_PASSWORD}. And for the A-MQ service use the credentials ${MQ_USERNAME}/${MQ_PASSWORD}. Please be sure to create the secret named \"${HTTPS_SECRET}\" containing the ${HTTPS_KEYSTORE} file used for serving secure content.",
"parameters": [
{
"displayName": "KIE Container Deployment",
@@ -288,7 +288,7 @@
"displayName": "A-MQ Mesh Discovery Type",
"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",
+ "value": "dns",
"required": false
},
{
@@ -340,6 +340,12 @@
"name": "MYSQL_IMAGE_STREAM_TAG",
"value": "5.7",
"required": true
+ },
+ {
+ "description": "Container memory limit",
+ "name": "MEMORY_LIMIT",
+ "value": "1Gi",
+ "required": false
}
],
"objects": [
@@ -442,6 +448,32 @@
}
},
{
+ "kind": "Service",
+ "apiVersion": "v1",
+ "spec": {
+ "clusterIP": "None",
+ "ports": [
+ {
+ "name": "mesh",
+ "port": 61616
+ }
+ ],
+ "selector": {
+ "deploymentConfig": "${APPLICATION_NAME}-amq"
+ }
+ },
+ "metadata": {
+ "name": "${APPLICATION_NAME}-amq-mesh",
+ "labels": {
+ "application": "${APPLICATION_NAME}"
+ },
+ "annotations": {
+ "service.alpha.kubernetes.io/tolerate-unready-endpoints": "true",
+ "description": "Supports node discovery for mesh formation."
+ }
+ }
+ },
+ {
"kind": "Route",
"apiVersion": "v1",
"id": "${APPLICATION_NAME}-http",
@@ -533,7 +565,7 @@
"from": {
"kind": "ImageStreamTag",
"namespace": "${IMAGE_STREAM_NAMESPACE}",
- "name": "jboss-processserver64-openshift:1.1"
+ "name": "jboss-processserver64-openshift:1.2"
}
}
},
@@ -610,13 +642,17 @@
}
},
"spec": {
- "serviceAccountName": "processserver-service-account",
"terminationGracePeriodSeconds": 60,
"containers": [
{
"name": "${APPLICATION_NAME}",
"image": "${APPLICATION_NAME}",
"imagePullPolicy": "Always",
+ "resources": {
+ "limits": {
+ "memory": "${MEMORY_LIMIT}"
+ }
+ },
"volumeMounts": [
{
"name": "processserver-keystore-volume",
@@ -631,7 +667,8 @@
"-c",
"/opt/eap/bin/livenessProbe.sh"
]
- }
+ },
+ "initialDelaySeconds": 60
},
"readinessProbe": {
"exec": {
@@ -885,8 +922,22 @@
"name": "MYSQL_AIO",
"value": "${MYSQL_AIO}"
}
+ ],
+ "volumeMounts": [
+ {
+ "mountPath": "/var/lib/mysql/data",
+ "name": "${APPLICATION_NAME}-data"
+ }
]
}
+ ],
+ "volumes": [
+ {
+ "emptyDir": {
+ "medium": ""
+ },
+ "name": "${APPLICATION_NAME}-data"
+ }
]
}
}
@@ -916,7 +967,7 @@
"from": {
"kind": "ImageStreamTag",
"namespace": "${IMAGE_STREAM_NAMESPACE}",
- "name": "jboss-amq-63:1.2"
+ "name": "jboss-amq-63:1.3"
}
}
},
@@ -1013,7 +1064,7 @@
},
{
"name": "AMQ_MESH_SERVICE_NAME",
- "value": "${APPLICATION_NAME}-amq-tcp"
+ "value": "${APPLICATION_NAME}-amq-mesh"
},
{
"name": "AMQ_MESH_SERVICE_NAMESPACE",
diff --git a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/processserver64-amq-postgresql-persistent-s2i.json b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/processserver64-amq-postgresql-persistent-s2i.json
index 56fefcc0a..92767f3b5 100644
--- a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/processserver64-amq-postgresql-persistent-s2i.json
+++ b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/processserver64-amq-postgresql-persistent-s2i.json
@@ -5,7 +5,7 @@
"annotations": {
"iconClass": "icon-processserver",
"tags": "processserver,jboss",
- "version": "1.4.7",
+ "version": "1.4.8",
"openshift.io/display-name": "JBoss BPM Suite 6.4 intelligent process server + A-MQ + PostgreSQL (with https)",
"openshift.io/provider-display-name": "Red Hat, Inc.",
"description": "An example BPM Suite application with A-MQ and a PostgreSQL database. For more information about using this template, see https://github.com/jboss-openshift/application-templates.",
@@ -17,9 +17,9 @@
},
"labels": {
"template": "processserver64-amq-postgresql-persistent-s2i",
- "xpaas": "1.4.7"
+ "xpaas": "1.4.8"
},
- "message": "A new persistent BPMS application (using PostgreSQL and A-MQ) has been created in your project. The username/password for accessing the KIE Server REST or JMS interface is ${KIE_SERVER_USER}/${KIE_SERVER_PASSWORD}. For accessing the MySQL database \"${DB_DATABASE}\" use the credentials ${DB_USERNAME}/${DB_PASSWORD}. And for the A-MQ service use the credentials ${MQ_USERNAME}/${MQ_PASSWORD}. Please be sure to create the \"processserver-service-account\" service account and the secret named \"${HTTPS_SECRET}\" containing the ${HTTPS_KEYSTORE} file used for serving secure content.",
+ "message": "A new persistent BPMS application (using PostgreSQL and A-MQ) has been created in your project. The username/password for accessing the KIE Server REST or JMS interface is ${KIE_SERVER_USER}/${KIE_SERVER_PASSWORD}. For accessing the MySQL database \"${DB_DATABASE}\" use the credentials ${DB_USERNAME}/${DB_PASSWORD}. And for the A-MQ service use the credentials ${MQ_USERNAME}/${MQ_PASSWORD}. Please be sure to create the secret named \"${HTTPS_SECRET}\" containing the ${HTTPS_KEYSTORE} file used for serving secure content.",
"parameters": [
{
"displayName": "KIE Container Deployment",
@@ -152,7 +152,7 @@
"displayName": "Database Volume Capacity",
"description": "Size of persistent storage for database volume.",
"name": "VOLUME_CAPACITY",
- "value": "512Mi",
+ "value": "1Gi",
"required": true
},
{
@@ -284,7 +284,7 @@
"displayName": "A-MQ Mesh Discovery Type",
"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",
+ "value": "dns",
"required": false
},
{
@@ -336,6 +336,12 @@
"name": "POSTGRESQL_IMAGE_STREAM_TAG",
"value": "9.5",
"required": true
+ },
+ {
+ "description": "Container memory limit",
+ "name": "MEMORY_LIMIT",
+ "value": "1Gi",
+ "required": false
}
],
"objects": [
@@ -438,6 +444,32 @@
}
},
{
+ "kind": "Service",
+ "apiVersion": "v1",
+ "spec": {
+ "clusterIP": "None",
+ "ports": [
+ {
+ "name": "mesh",
+ "port": 61616
+ }
+ ],
+ "selector": {
+ "deploymentConfig": "${APPLICATION_NAME}-amq"
+ }
+ },
+ "metadata": {
+ "name": "${APPLICATION_NAME}-amq-mesh",
+ "labels": {
+ "application": "${APPLICATION_NAME}"
+ },
+ "annotations": {
+ "service.alpha.kubernetes.io/tolerate-unready-endpoints": "true",
+ "description": "Supports node discovery for mesh formation."
+ }
+ }
+ },
+ {
"kind": "Route",
"apiVersion": "v1",
"id": "${APPLICATION_NAME}-http",
@@ -529,7 +561,7 @@
"from": {
"kind": "ImageStreamTag",
"namespace": "${IMAGE_STREAM_NAMESPACE}",
- "name": "jboss-processserver64-openshift:1.1"
+ "name": "jboss-processserver64-openshift:1.2"
}
}
},
@@ -606,13 +638,17 @@
}
},
"spec": {
- "serviceAccountName": "processserver-service-account",
"terminationGracePeriodSeconds": 60,
"containers": [
{
"name": "${APPLICATION_NAME}",
"image": "${APPLICATION_NAME}",
"imagePullPolicy": "Always",
+ "resources": {
+ "limits": {
+ "memory": "${MEMORY_LIMIT}"
+ }
+ },
"volumeMounts": [
{
"name": "processserver-keystore-volume",
@@ -627,7 +663,8 @@
"-c",
"/opt/eap/bin/livenessProbe.sh"
]
- }
+ },
+ "initialDelaySeconds": 60
},
"readinessProbe": {
"exec": {
@@ -970,7 +1007,7 @@
"from": {
"kind": "ImageStreamTag",
"namespace": "${IMAGE_STREAM_NAMESPACE}",
- "name": "jboss-amq-63:1.2"
+ "name": "jboss-amq-63:1.3"
}
}
},
@@ -1077,7 +1114,7 @@
},
{
"name": "AMQ_MESH_SERVICE_NAME",
- "value": "${APPLICATION_NAME}-amq-tcp"
+ "value": "${APPLICATION_NAME}-amq-mesh"
},
{
"name": "AMQ_MESH_SERVICE_NAMESPACE",
diff --git a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/processserver64-amq-postgresql-s2i.json b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/processserver64-amq-postgresql-s2i.json
index bb8d2df28..add35a349 100644
--- a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/processserver64-amq-postgresql-s2i.json
+++ b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/processserver64-amq-postgresql-s2i.json
@@ -6,7 +6,7 @@
"description": "Application template for Red Hat JBoss BPM Suite 6.4 intelligent process server AMQ and PostgreSQL applications built using S2I.",
"iconClass": "icon-processserver",
"tags": "processserver,jboss,hidden",
- "version": "1.4.7",
+ "version": "1.4.8",
"openshift.io/display-name": "JBoss BPM Suite 6.4 intelligent process server + A-MQ + PostgreSQL (Ephemeral with https)",
"openshift.io/provider-display-name": "Red Hat, Inc.",
"description": "An example BPM Suite application with A-MQ and a PostgreSQL database. For more information about using this template, see https://github.com/jboss-openshift/application-templates.",
@@ -18,9 +18,9 @@
},
"labels": {
"template": "processserver64-amq-postgresql-s2i",
- "xpaas": "1.4.7"
+ "xpaas": "1.4.8"
},
- "message": "A new BPMS application (using PostgreSQL and A-MQ) has been created in your project. The username/password for accessing the KIE Server REST or JMS interface is ${KIE_SERVER_USER}/${KIE_SERVER_PASSWORD}. For accessing the MySQL database \"${DB_DATABASE}\" use the credentials ${DB_USERNAME}/${DB_PASSWORD}. And for the A-MQ service use the credentials ${MQ_USERNAME}/${MQ_PASSWORD}. Please be sure to create the \"processserver-service-account\" service account and the secret named \"${HTTPS_SECRET}\" containing the ${HTTPS_KEYSTORE} file used for serving secure content.",
+ "message": "A new BPMS application (using PostgreSQL and A-MQ) has been created in your project. The username/password for accessing the KIE Server REST or JMS interface is ${KIE_SERVER_USER}/${KIE_SERVER_PASSWORD}. For accessing the MySQL database \"${DB_DATABASE}\" use the credentials ${DB_USERNAME}/${DB_PASSWORD}. And for the A-MQ service use the credentials ${MQ_USERNAME}/${MQ_PASSWORD}. Please be sure to create the secret named \"${HTTPS_SECRET}\" containing the ${HTTPS_KEYSTORE} file used for serving secure content.",
"parameters": [
{
"displayName": "KIE Container Deployment",
@@ -271,7 +271,7 @@
"displayName": "A-MQ Mesh Discovery Type",
"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",
+ "value": "dns",
"required": false
},
{
@@ -323,6 +323,12 @@
"name": "POSTGRESQL_IMAGE_STREAM_TAG",
"value": "9.5",
"required": true
+ },
+ {
+ "description": "Container memory limit",
+ "name": "MEMORY_LIMIT",
+ "value": "1Gi",
+ "required": false
}
],
"objects": [
@@ -425,6 +431,32 @@
}
},
{
+ "kind": "Service",
+ "apiVersion": "v1",
+ "spec": {
+ "clusterIP": "None",
+ "ports": [
+ {
+ "name": "mesh",
+ "port": 61616
+ }
+ ],
+ "selector": {
+ "deploymentConfig": "${APPLICATION_NAME}-amq"
+ }
+ },
+ "metadata": {
+ "name": "${APPLICATION_NAME}-amq-mesh",
+ "labels": {
+ "application": "${APPLICATION_NAME}"
+ },
+ "annotations": {
+ "service.alpha.kubernetes.io/tolerate-unready-endpoints": "true",
+ "description": "Supports node discovery for mesh formation."
+ }
+ }
+ },
+ {
"kind": "Route",
"apiVersion": "v1",
"id": "${APPLICATION_NAME}-http",
@@ -516,7 +548,7 @@
"from": {
"kind": "ImageStreamTag",
"namespace": "${IMAGE_STREAM_NAMESPACE}",
- "name": "jboss-processserver64-openshift:1.1"
+ "name": "jboss-processserver64-openshift:1.2"
}
}
},
@@ -593,13 +625,17 @@
}
},
"spec": {
- "serviceAccountName": "processserver-service-account",
"terminationGracePeriodSeconds": 60,
"containers": [
{
"name": "${APPLICATION_NAME}",
"image": "${APPLICATION_NAME}",
"imagePullPolicy": "Always",
+ "resources": {
+ "limits": {
+ "memory": "${MEMORY_LIMIT}"
+ }
+ },
"volumeMounts": [
{
"name": "processserver-keystore-volume",
@@ -614,7 +650,8 @@
"-c",
"/opt/eap/bin/livenessProbe.sh"
]
- }
+ },
+ "initialDelaySeconds": 60
},
"readinessProbe": {
"exec": {
@@ -856,8 +893,22 @@
"name": "POSTGRESQL_SHARED_BUFFERS",
"value": "${POSTGRESQL_SHARED_BUFFERS}"
}
+ ],
+ "volumeMounts": [
+ {
+ "mountPath": "/var/lib/pgsql/data",
+ "name": "${APPLICATION_NAME}-data"
+ }
]
}
+ ],
+ "volumes": [
+ {
+ "emptyDir": {
+ "medium": ""
+ },
+ "name": "${APPLICATION_NAME}-data"
+ }
]
}
}
@@ -887,7 +938,7 @@
"from": {
"kind": "ImageStreamTag",
"namespace": "${IMAGE_STREAM_NAMESPACE}",
- "name": "jboss-amq-63:1.2"
+ "name": "jboss-amq-63:1.3"
}
}
},
@@ -984,7 +1035,7 @@
},
{
"name": "AMQ_MESH_SERVICE_NAME",
- "value": "${APPLICATION_NAME}-amq-tcp"
+ "value": "${APPLICATION_NAME}-amq-mesh"
},
{
"name": "AMQ_MESH_SERVICE_NAMESPACE",
diff --git a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/processserver64-basic-s2i.json b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/processserver64-basic-s2i.json
index 1b7cc8cf1..9af4b6cb4 100644
--- a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/processserver64-basic-s2i.json
+++ b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/processserver64-basic-s2i.json
@@ -5,7 +5,7 @@
"annotations": {
"iconClass": "icon-processserver",
"tags": "processserver,jboss",
- "version": "1.4.7",
+ "version": "1.4.8",
"openshift.io/display-name": "JBoss BPM Suite 6.4 intelligent process server (no https)",
"openshift.io/provider-display-name": "Red Hat, Inc.",
"description": "An example BPM Suite application. For more information about using this template, see https://github.com/jboss-openshift/application-templates.",
@@ -17,7 +17,7 @@
},
"labels": {
"template": "processserver64-basic-s2i",
- "xpaas": "1.4.7"
+ "xpaas": "1.4.8"
},
"message": "A new BPMS application has been created in your project. The username/password for accessing the KIE Server REST or JMS interface is ${KIE_SERVER_USER}/${KIE_SERVER_PASSWORD}.",
"parameters": [
@@ -142,6 +142,12 @@
"name": "ARTIFACT_DIR",
"value": "",
"required": false
+ },
+ {
+ "description": "Container memory limit",
+ "name": "MEMORY_LIMIT",
+ "value": "1Gi",
+ "required": false
}
],
"objects": [
@@ -238,7 +244,7 @@
"from": {
"kind": "ImageStreamTag",
"namespace": "${IMAGE_STREAM_NAMESPACE}",
- "name": "jboss-processserver64-openshift:1.1"
+ "name": "jboss-processserver64-openshift:1.2"
}
}
},
@@ -321,6 +327,11 @@
"name": "${APPLICATION_NAME}",
"image": "${APPLICATION_NAME}",
"imagePullPolicy": "Always",
+ "resources": {
+ "limits": {
+ "memory": "${MEMORY_LIMIT}"
+ }
+ },
"livenessProbe": {
"exec": {
"command": [
@@ -328,7 +339,8 @@
"-c",
"/opt/eap/bin/livenessProbe.sh"
]
- }
+ },
+ "initialDelaySeconds": 60
},
"readinessProbe": {
"exec": {
diff --git a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/processserver64-mysql-persistent-s2i.json b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/processserver64-mysql-persistent-s2i.json
index 1a4d0887c..97388a2e1 100644
--- a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/processserver64-mysql-persistent-s2i.json
+++ b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/processserver64-mysql-persistent-s2i.json
@@ -6,7 +6,7 @@
"description": "Application template for Red Hat JBoss BPM Suite 6.4 intelligent process server MySQL applications with persistent storage built using S2I.",
"iconClass": "icon-processserver",
"tags": "processserver,jboss",
- "version": "1.4.7",
+ "version": "1.4.8",
"openshift.io/display-name": "JBoss BPM Suite 6.4 intelligent process server + MySQL (with https)",
"openshift.io/provider-display-name": "Red Hat, Inc.",
"description": "An example BPM Suite application with a MySQL database. For more information about using this template, see https://github.com/jboss-openshift/application-templates.",
@@ -18,9 +18,9 @@
},
"labels": {
"template": "processserver64-mysql-persistent-s2i",
- "xpaas": "1.4.7"
+ "xpaas": "1.4.8"
},
- "message": "A new persistent BPMS application (using MySQL) has been created in your project. The username/password for accessing the KIE Server REST or JMS interface is ${KIE_SERVER_USER}/${KIE_SERVER_PASSWORD}. For accessing the MySQL database \"${DB_DATABASE}\" use the credentials ${DB_USERNAME}/${DB_PASSWORD}. Please be sure to create the \"processserver-service-account\" service account and the secret named \"${HTTPS_SECRET}\" containing the ${HTTPS_KEYSTORE} file used for serving secure content.",
+ "message": "A new persistent BPMS application (using MySQL) has been created in your project. The username/password for accessing the KIE Server REST or JMS interface is ${KIE_SERVER_USER}/${KIE_SERVER_PASSWORD}. For accessing the MySQL database \"${DB_DATABASE}\" use the credentials ${DB_USERNAME}/${DB_PASSWORD}. Please be sure to create the secret named \"${HTTPS_SECRET}\" containing the ${HTTPS_KEYSTORE} file used for serving secure content.",
"parameters": [
{
"displayName": "KIE Container Deployment",
@@ -132,7 +132,7 @@
"displayName": "Database Volume Capacity",
"description": "Size of persistent storage for database volume.",
"name": "VOLUME_CAPACITY",
- "value": "512Mi",
+ "value": "1Gi",
"required": true
},
{
@@ -291,6 +291,12 @@
"name": "MYSQL_IMAGE_STREAM_TAG",
"value": "5.7",
"required": true
+ },
+ {
+ "description": "Container memory limit",
+ "name": "MEMORY_LIMIT",
+ "value": "1Gi",
+ "required": false
}
],
"objects": [
@@ -460,7 +466,7 @@
"from": {
"kind": "ImageStreamTag",
"namespace": "${IMAGE_STREAM_NAMESPACE}",
- "name": "jboss-processserver64-openshift:1.1"
+ "name": "jboss-processserver64-openshift:1.2"
}
}
},
@@ -537,13 +543,17 @@
}
},
"spec": {
- "serviceAccountName": "processserver-service-account",
"terminationGracePeriodSeconds": 60,
"containers": [
{
"name": "${APPLICATION_NAME}",
"image": "${APPLICATION_NAME}",
"imagePullPolicy": "Always",
+ "resources": {
+ "limits": {
+ "memory": "${MEMORY_LIMIT}"
+ }
+ },
"volumeMounts": [
{
"name": "processserver-keystore-volume",
@@ -558,7 +568,8 @@
"-c",
"/opt/eap/bin/livenessProbe.sh"
]
- }
+ },
+ "initialDelaySeconds": 60
},
"readinessProbe": {
"exec": {
diff --git a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/processserver64-mysql-s2i.json b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/processserver64-mysql-s2i.json
index 7c491d832..2e7dc3158 100644
--- a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/processserver64-mysql-s2i.json
+++ b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/processserver64-mysql-s2i.json
@@ -5,7 +5,7 @@
"annotations": {
"iconClass": "icon-processserver",
"tags": "processserver,jboss,hidden",
- "version": "1.4.7",
+ "version": "1.4.8",
"openshift.io/display-name": "JBoss BPM Suite 6.4 intelligent process server + MySQL (Ephemeral with https)",
"openshift.io/provider-display-name": "Red Hat, Inc.",
"description": "An example BPM Suite application with a MySQL database. For more information about using this template, see https://github.com/jboss-openshift/application-templates.",
@@ -17,9 +17,9 @@
},
"labels": {
"template": "processserver64-mysql-s2i",
- "xpaas": "1.4.7"
+ "xpaas": "1.4.8"
},
- "message": "A new BPMS application (using MySQL) has been created in your project. The username/password for accessing the KIE Server REST or JMS interface is ${KIE_SERVER_USER}/${KIE_SERVER_PASSWORD}. For accessing the MySQL database \"${DB_DATABASE}\" use the credentials ${DB_USERNAME}/${DB_PASSWORD}. Please be sure to create the \"processserver-service-account\" service account and the secret named \"${HTTPS_SECRET}\" containing the ${HTTPS_KEYSTORE} file used for serving secure content.",
+ "message": "A new BPMS application (using MySQL) has been created in your project. The username/password for accessing the KIE Server REST or JMS interface is ${KIE_SERVER_USER}/${KIE_SERVER_PASSWORD}. For accessing the MySQL database \"${DB_DATABASE}\" use the credentials ${DB_USERNAME}/${DB_PASSWORD}. Please be sure to create the secret named \"${HTTPS_SECRET}\" containing the ${HTTPS_KEYSTORE} file used for serving secure content.",
"parameters": [
{
"displayName": "KIE Container Deployment",
@@ -283,6 +283,12 @@
"name": "MYSQL_IMAGE_STREAM_TAG",
"value": "5.7",
"required": true
+ },
+ {
+ "description": "Container memory limit",
+ "name": "MEMORY_LIMIT",
+ "value": "1Gi",
+ "required": false
}
],
"objects": [
@@ -452,7 +458,7 @@
"from": {
"kind": "ImageStreamTag",
"namespace": "${IMAGE_STREAM_NAMESPACE}",
- "name": "jboss-processserver64-openshift:1.1"
+ "name": "jboss-processserver64-openshift:1.2"
}
}
},
@@ -529,13 +535,17 @@
}
},
"spec": {
- "serviceAccountName": "processserver-service-account",
"terminationGracePeriodSeconds": 60,
"containers": [
{
"name": "${APPLICATION_NAME}",
"image": "${APPLICATION_NAME}",
"imagePullPolicy": "Always",
+ "resources": {
+ "limits": {
+ "memory": "${MEMORY_LIMIT}"
+ }
+ },
"volumeMounts": [
{
"name": "processserver-keystore-volume",
@@ -550,7 +560,8 @@
"-c",
"/opt/eap/bin/livenessProbe.sh"
]
- }
+ },
+ "initialDelaySeconds": 60
},
"readinessProbe": {
"exec": {
@@ -776,8 +787,22 @@
"name": "MYSQL_AIO",
"value": "${MYSQL_AIO}"
}
+ ],
+ "volumeMounts": [
+ {
+ "mountPath": "/var/lib/mysql/data",
+ "name": "${APPLICATION_NAME}-data"
+ }
]
}
+ ],
+ "volumes": [
+ {
+ "emptyDir": {
+ "medium": ""
+ },
+ "name": "${APPLICATION_NAME}-data"
+ }
]
}
}
diff --git a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/processserver64-postgresql-persistent-s2i.json b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/processserver64-postgresql-persistent-s2i.json
index 8965ea41f..66dc891cb 100644
--- a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/processserver64-postgresql-persistent-s2i.json
+++ b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/processserver64-postgresql-persistent-s2i.json
@@ -5,7 +5,7 @@
"annotations": {
"iconClass": "icon-processserver",
"tags": "processserver,jboss",
- "version": "1.4.7",
+ "version": "1.4.8",
"openshift.io/display-name": "JBoss BPM Suite 6.4 intelligent process server + PostgreSQL (with https)",
"openshift.io/provider-display-name": "Red Hat, Inc.",
"description": "An example BPM Suite application with a PostgreSQL database. For more information about using this template, see https://github.com/jboss-openshift/application-templates.",
@@ -17,9 +17,9 @@
},
"labels": {
"template": "processserver64-postgresql-persistent-s2i",
- "xpaas": "1.4.7"
+ "xpaas": "1.4.8"
},
- "message": "A new persistent BPMS application (using PostgreSQL) has been created in your project. The username/password for accessing the KIE Server REST or JMS interface is ${KIE_SERVER_USER}/${KIE_SERVER_PASSWORD}. For accessing the MySQL database \"${DB_DATABASE}\" use the credentials ${DB_USERNAME}/${DB_PASSWORD}. Please be sure to create the \"processserver-service-account\" service account and the secret named \"${HTTPS_SECRET}\" containing the ${HTTPS_KEYSTORE} file used for serving secure content.",
+ "message": "A new persistent BPMS application (using PostgreSQL) has been created in your project. The username/password for accessing the KIE Server REST or JMS interface is ${KIE_SERVER_USER}/${KIE_SERVER_PASSWORD}. For accessing the MySQL database \"${DB_DATABASE}\" use the credentials ${DB_USERNAME}/${DB_PASSWORD}. Please be sure to create the secret named \"${HTTPS_SECRET}\" containing the ${HTTPS_KEYSTORE} file used for serving secure content.",
"parameters": [
{
"displayName": "KIE Container Deployment",
@@ -131,7 +131,7 @@
"displayName": "Database Volume Capacity",
"description": "Size of persistent storage for database volume.",
"name": "VOLUME_CAPACITY",
- "value": "512Mi",
+ "value": "1Gi",
"required": true
},
{
@@ -272,6 +272,12 @@
"name": "POSTGRESQL_IMAGE_STREAM_TAG",
"value": "9.5",
"required": true
+ },
+ {
+ "description": "Container memory limit",
+ "name": "MEMORY_LIMIT",
+ "value": "1Gi",
+ "required": false
}
],
"objects": [
@@ -441,7 +447,7 @@
"from": {
"kind": "ImageStreamTag",
"namespace": "${IMAGE_STREAM_NAMESPACE}",
- "name": "jboss-processserver64-openshift:1.1"
+ "name": "jboss-processserver64-openshift:1.2"
}
}
},
@@ -518,13 +524,17 @@
}
},
"spec": {
- "serviceAccountName": "processserver-service-account",
"terminationGracePeriodSeconds": 60,
"containers": [
{
"name": "${APPLICATION_NAME}",
"image": "${APPLICATION_NAME}",
"imagePullPolicy": "Always",
+ "resources": {
+ "limits": {
+ "memory": "${MEMORY_LIMIT}"
+ }
+ },
"volumeMounts": [
{
"name": "processserver-keystore-volume",
@@ -539,7 +549,8 @@
"-c",
"/opt/eap/bin/livenessProbe.sh"
]
- }
+ },
+ "initialDelaySeconds": 60
},
"readinessProbe": {
"exec": {
diff --git a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/processserver64-postgresql-s2i.json b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/processserver64-postgresql-s2i.json
index e21f0ce4e..bb9efc2bb 100644
--- a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/processserver64-postgresql-s2i.json
+++ b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/processserver64-postgresql-s2i.json
@@ -5,7 +5,7 @@
"annotations": {
"iconClass": "icon-processserver",
"tags": "processserver,jboss,hidden",
- "version": "1.4.7",
+ "version": "1.4.8",
"openshift.io/display-name": "JBoss BPM Suite 6.4 intelligent process server + PostgreSQL (Ephemeral with https)",
"openshift.io/provider-display-name": "Red Hat, Inc.",
"description": "An example BPM Suite application with a PostgreSQL database. For more information about using this template, see https://github.com/jboss-openshift/application-templates.",
@@ -17,9 +17,9 @@
},
"labels": {
"template": "processserver64-postgresql-s2i",
- "xpaas": "1.4.7"
+ "xpaas": "1.4.8"
},
- "message": "A new BPMS application (using PostgreSQL) has been created in your project. The username/password for accessing the KIE Server REST or JMS interface is ${KIE_SERVER_USER}/${KIE_SERVER_PASSWORD}. For accessing the MySQL database \"${DB_DATABASE}\" use the credentials ${DB_USERNAME}/${DB_PASSWORD}. Please be sure to create the \"processserver-service-account\" service account and the secret named \"${HTTPS_SECRET}\" containing the ${HTTPS_KEYSTORE} file used for serving secure content.",
+ "message": "A new BPMS application (using PostgreSQL) has been created in your project. The username/password for accessing the KIE Server REST or JMS interface is ${KIE_SERVER_USER}/${KIE_SERVER_PASSWORD}. For accessing the MySQL database \"${DB_DATABASE}\" use the credentials ${DB_USERNAME}/${DB_PASSWORD}. Please be sure to create the secret named \"${HTTPS_SECRET}\" containing the ${HTTPS_KEYSTORE} file used for serving secure content.",
"parameters": [
{
"displayName": "KIE Container Deployment",
@@ -265,6 +265,12 @@
"name": "POSTGRESQL_IMAGE_STREAM_TAG",
"value": "9.5",
"required": true
+ },
+ {
+ "description": "Container memory limit",
+ "name": "MEMORY_LIMIT",
+ "value": "1Gi",
+ "required": false
}
],
"objects": [
@@ -434,7 +440,7 @@
"from": {
"kind": "ImageStreamTag",
"namespace": "${IMAGE_STREAM_NAMESPACE}",
- "name": "jboss-processserver64-openshift:1.1"
+ "name": "jboss-processserver64-openshift:1.2"
}
}
},
@@ -511,13 +517,17 @@
}
},
"spec": {
- "serviceAccountName": "processserver-service-account",
"terminationGracePeriodSeconds": 60,
"containers": [
{
"name": "${APPLICATION_NAME}",
"image": "${APPLICATION_NAME}",
"imagePullPolicy": "Always",
+ "resources": {
+ "limits": {
+ "memory": "${MEMORY_LIMIT}"
+ }
+ },
"volumeMounts": [
{
"name": "processserver-keystore-volume",
@@ -532,7 +542,8 @@
"-c",
"/opt/eap/bin/livenessProbe.sh"
]
- }
+ },
+ "initialDelaySeconds": 60
},
"readinessProbe": {
"exec": {
@@ -746,8 +757,22 @@
"name": "POSTGRESQL_SHARED_BUFFERS",
"value": "${POSTGRESQL_SHARED_BUFFERS}"
}
+ ],
+ "volumeMounts": [
+ {
+ "mountPath": "/var/lib/pgsql/data",
+ "name": "${APPLICATION_NAME}-data"
+ }
]
}
+ ],
+ "volumes": [
+ {
+ "emptyDir": {
+ "medium": ""
+ },
+ "name": "${APPLICATION_NAME}-data"
+ }
]
}
}
diff --git a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/spring-boot-camel-amq-template.json b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/spring-boot-camel-amq-template.json
index 2c1a73a29..89f10f955 100644
--- a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/spring-boot-camel-amq-template.json
+++ b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/spring-boot-camel-amq-template.json
@@ -3,7 +3,7 @@
"kind": "Template",
"metadata": {
"annotations": {
- "description": "Spring Boot, Camel and ActiveMQ QuickStart. This quickstart demonstrates how to connect a Spring-Boot application to an ActiveMQ broker and use JMS messaging between two Camel routes using OpenShift. In this example we will use two containers, one container to run as a ActiveMQ broker, and another as a client to the broker, where the Camel routes are running. This quickstart requires the ActiveMQ broker has been deployed and running first, one simple way to run a A-MQ service is following the documentation of the A-MQ xPaaS image for OpenShift related to the amq62-basic template",
+ "description": "Spring Boot, Camel and ActiveMQ QuickStart. This quickstart demonstrates how to connect a Spring-Boot application to an ActiveMQ broker and use JMS messaging between two Camel routes using OpenShift. In this example we will use two containers, one container to run as a ActiveMQ broker, and another as a client to the broker, where the Camel routes are running. This quickstart requires the ActiveMQ broker has been deployed and running first, one simple way to run a A-MQ service is following the documentation of the A-MQ xPaaS image for OpenShift related to the amq63-basic template",
"tags": "quickstart,java,springboot,fis",
"iconClass": "icon-jboss",
"version": "2.0"
@@ -31,7 +31,7 @@
{
"name": "GIT_REF",
"displayName": "Git Reference",
- "value": "spring-boot-camel-amq-1.0.0.redhat-000064",
+ "value": "spring-boot-camel-amq-1.0.0.redhat-000067",
"description": "Set this to a branch name, tag or other ref of your repository if you are not using the default branch."
},
{
@@ -60,7 +60,7 @@
{
"name": "APP_VERSION",
"displayName": "Application Version",
- "value": "1.0.0.redhat-000064",
+ "value": "1.0.0.redhat-000067",
"description": "The application version."
},
{
diff --git a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/spring-boot-camel-config-template.json b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/spring-boot-camel-config-template.json
index b62e768b6..6b298b994 100644
--- a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/spring-boot-camel-config-template.json
+++ b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/spring-boot-camel-config-template.json
@@ -31,7 +31,7 @@
{
"name": "GIT_REF",
"displayName": "Git Reference",
- "value": "spring-boot-camel-config-1.0.0.redhat-000014",
+ "value": "spring-boot-camel-config-1.0.0.redhat-000017",
"description": "Set this to a branch name, tag or other ref of your repository if you are not using the default branch."
},
{
@@ -64,7 +64,7 @@
{
"name": "APP_VERSION",
"displayName": "Application Version",
- "value": "1.0.0.redhat-000014",
+ "value": "1.0.0.redhat-000017",
"description": "The application version."
},
{
diff --git a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/spring-boot-camel-drools-template.json b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/spring-boot-camel-drools-template.json
index 91081e493..e646ccdb4 100644
--- a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/spring-boot-camel-drools-template.json
+++ b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/spring-boot-camel-drools-template.json
@@ -31,7 +31,7 @@
{
"name": "GIT_REF",
"displayName": "Git Reference",
- "value": "spring-boot-camel-drools-1.0.0.redhat-000063",
+ "value": "spring-boot-camel-drools-1.0.0.redhat-000066",
"description": "Set this to a branch name, tag or other ref of your repository if you are not using the default branch."
},
{
@@ -63,7 +63,7 @@
{
"name": "APP_VERSION",
"displayName": "Application Version",
- "value": "1.0.0.redhat-000063",
+ "value": "1.0.0.redhat-000066",
"description": "The application version."
},
{
diff --git a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/spring-boot-camel-infinispan-template.json b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/spring-boot-camel-infinispan-template.json
index 8d97400ab..1d4910b9a 100644
--- a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/spring-boot-camel-infinispan-template.json
+++ b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/spring-boot-camel-infinispan-template.json
@@ -31,7 +31,7 @@
{
"name": "GIT_REF",
"displayName": "Git Reference",
- "value": "spring-boot-camel-infinispan-1.0.0.redhat-000033",
+ "value": "spring-boot-camel-infinispan-1.0.0.redhat-000036",
"description": "Set this to a branch name, tag or other ref of your repository if you are not using the default branch."
},
{
@@ -50,7 +50,7 @@
{
"name": "APP_VERSION",
"displayName": "Application Version",
- "value": "1.0.0.redhat-000033",
+ "value": "1.0.0.redhat-000036",
"description": "The application version."
},
{
diff --git a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/spring-boot-camel-rest-sql-template.json b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/spring-boot-camel-rest-sql-template.json
index bf722844c..61f6cb983 100644
--- a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/spring-boot-camel-rest-sql-template.json
+++ b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/spring-boot-camel-rest-sql-template.json
@@ -31,7 +31,7 @@
{
"name": "GIT_REF",
"displayName": "Git Reference",
- "value": "spring-boot-camel-rest-sql-1.0.0.redhat-000064",
+ "value": "spring-boot-camel-rest-sql-1.0.0.redhat-000067",
"description": "Set this to a branch name, tag or other ref of your repository if you are not using the default branch."
},
{
@@ -72,7 +72,7 @@
{
"name": "APP_VERSION",
"displayName": "Application Version",
- "value": "1.0.0.redhat-000064",
+ "value": "1.0.0.redhat-000067",
"description": "The application version."
},
{
diff --git a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/spring-boot-camel-teiid-template.json b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/spring-boot-camel-teiid-template.json
index 856264615..1f5542069 100644
--- a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/spring-boot-camel-teiid-template.json
+++ b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/spring-boot-camel-teiid-template.json
@@ -31,7 +31,7 @@
{
"name": "GIT_REF",
"displayName": "Git Reference",
- "value": "spring-boot-camel-teiid-1.0.0.redhat-000062",
+ "value": "spring-boot-camel-teiid-1.0.0.redhat-000065",
"description": "Set this to a branch name, tag or other ref of your repository if you are not using the default branch."
},
{
@@ -68,7 +68,7 @@
{
"name": "APP_VERSION",
"displayName": "Application Version",
- "value": "1.0.0.redhat-000062",
+ "value": "1.0.0.redhat-000065",
"description": "The application version."
},
{
diff --git a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/spring-boot-camel-template.json b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/spring-boot-camel-template.json
index 9c0fe287e..939979912 100644
--- a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/spring-boot-camel-template.json
+++ b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/spring-boot-camel-template.json
@@ -31,7 +31,7 @@
{
"name": "GIT_REF",
"displayName": "Git Reference",
- "value": "spring-boot-camel-1.0.0.redhat-000064",
+ "value": "spring-boot-camel-1.0.0.redhat-000067",
"description": "Set this to a branch name, tag or other ref of your repository if you are not using the default branch."
},
{
@@ -43,7 +43,7 @@
{
"name": "APP_VERSION",
"displayName": "Application Version",
- "value": "1.0.0.redhat-000064",
+ "value": "1.0.0.redhat-000067",
"description": "The application version."
},
{
diff --git a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/spring-boot-camel-xml-template.json b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/spring-boot-camel-xml-template.json
index 87c0e347a..c5691bc9b 100644
--- a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/spring-boot-camel-xml-template.json
+++ b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/spring-boot-camel-xml-template.json
@@ -31,7 +31,7 @@
{
"name": "GIT_REF",
"displayName": "Git Reference",
- "value": "spring-boot-camel-xml-1.0.0.redhat-000064",
+ "value": "spring-boot-camel-xml-1.0.0.redhat-000067",
"description": "Set this to a branch name, tag or other ref of your repository if you are not using the default branch."
},
{
@@ -43,7 +43,7 @@
{
"name": "APP_VERSION",
"displayName": "Application Version",
- "value": "1.0.0.redhat-000064",
+ "value": "1.0.0.redhat-000067",
"description": "The application version."
},
{
diff --git a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/spring-boot-cxf-jaxrs-template.json b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/spring-boot-cxf-jaxrs-template.json
index 8b0261035..577eebf58 100644
--- a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/spring-boot-cxf-jaxrs-template.json
+++ b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/spring-boot-cxf-jaxrs-template.json
@@ -31,7 +31,7 @@
{
"name": "GIT_REF",
"displayName": "Git Reference",
- "value": "spring-boot-cxf-jaxrs-1.0.0.redhat-000014",
+ "value": "spring-boot-cxf-jaxrs-1.0.0.redhat-000017",
"description": "Set this to a branch name, tag or other ref of your repository if you are not using the default branch."
},
{
@@ -49,7 +49,7 @@
{
"name": "APP_VERSION",
"displayName": "Application Version",
- "value": "1.0.0.redhat-000014",
+ "value": "1.0.0.redhat-000017",
"description": "The application version."
},
{
diff --git a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/spring-boot-cxf-jaxws-template.json b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/spring-boot-cxf-jaxws-template.json
index 8b36f5f0b..11441276a 100644
--- a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/spring-boot-cxf-jaxws-template.json
+++ b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/spring-boot-cxf-jaxws-template.json
@@ -31,7 +31,7 @@
{
"name": "GIT_REF",
"displayName": "Git Reference",
- "value": "spring-boot-cxf-jaxws-1.0.0.redhat-000014",
+ "value": "spring-boot-cxf-jaxws-1.0.0.redhat-000017",
"description": "Set this to a branch name, tag or other ref of your repository if you are not using the default branch."
},
{
@@ -49,7 +49,7 @@
{
"name": "APP_VERSION",
"displayName": "Application Version",
- "value": "1.0.0.redhat-000014",
+ "value": "1.0.0.redhat-000017",
"description": "The application version."
},
{
diff --git a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/sso71-https.json b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/sso71-https.json
index 26dd26624..655ec2eaa 100644
--- a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/sso71-https.json
+++ b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/sso71-https.json
@@ -5,7 +5,7 @@
"annotations": {
"iconClass" : "icon-sso",
"tags" : "sso,keycloak,jboss,hidden",
- "version": "1.4.7",
+ "version": "1.4.8",
"openshift.io/display-name": "Single Sign-On 7.1",
"openshift.io/provider-display-name": "Red Hat, Inc.",
"description": "An example SSO 7 application. For more information about using this template, see https://github.com/jboss-openshift/application-templates.",
@@ -17,9 +17,9 @@
},
"labels": {
"template": "sso71-https",
- "xpaas": "1.4.7"
+ "xpaas": "1.4.8"
},
- "message": "A new SSO service has been created in your project. The admin username/password for accessing the master realm via the SSO console is ${SSO_ADMIN_USERNAME}/${SSO_ADMIN_PASSWORD}. Please be sure to create the \"${SERVICE_ACCOUNT_NAME}\" service account and the following secrets: \"${HTTPS_SECRET}\" containing the ${HTTPS_KEYSTORE} file used for serving secure content; \"${JGROUPS_ENCRYPT_SECRET}\" containing the ${JGROUPS_ENCRYPT_KEYSTORE} file used for securing JGroups communications; \"${SSO_TRUSTSTORE_SECRET}\" containing the ${SSO_TRUSTSTORE} file used for securing SSO requests.",
+ "message": "A new SSO service has been created in your project. The admin username/password for accessing the master realm via the SSO console is ${SSO_ADMIN_USERNAME}/${SSO_ADMIN_PASSWORD}. Please be sure to create the following secrets: \"${HTTPS_SECRET}\" containing the ${HTTPS_KEYSTORE} file used for serving secure content; \"${JGROUPS_ENCRYPT_SECRET}\" containing the ${JGROUPS_ENCRYPT_KEYSTORE} file used for securing JGroups communications; \"${SSO_TRUSTSTORE_SECRET}\" containing the ${SSO_TRUSTSTORE} file used for securing SSO requests.",
"parameters": [
{
"displayName": "Application Name",
@@ -43,13 +43,6 @@
"required": false
},
{
- "displayName": "Service Account Name",
- "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
- },
- {
"displayName": "Server Keystore Secret Name",
"description": "The name of the secret containing the keystore file",
"name": "HTTPS_SECRET",
@@ -202,6 +195,12 @@
"name": "SSO_TRUSTSTORE_SECRET",
"value": "sso-app-secret",
"required": false
+ },
+ {
+ "description": "Container memory limit",
+ "name": "MEMORY_LIMIT",
+ "value": "1Gi",
+ "required": false
}
],
"objects": [
@@ -254,6 +253,32 @@
}
},
{
+ "kind": "Service",
+ "apiVersion": "v1",
+ "spec": {
+ "clusterIP": "None",
+ "ports": [
+ {
+ "name": "ping",
+ "port": 8888
+ }
+ ],
+ "selector": {
+ "deploymentConfig": "${APPLICATION_NAME}"
+ }
+ },
+ "metadata": {
+ "name": "${APPLICATION_NAME}-ping",
+ "labels": {
+ "application": "${APPLICATION_NAME}"
+ },
+ "annotations": {
+ "service.alpha.kubernetes.io/tolerate-unready-endpoints": "true",
+ "description": "The JGroups ping port for clustering."
+ }
+ }
+ },
+ {
"kind": "Route",
"apiVersion": "v1",
"id": "${APPLICATION_NAME}-http",
@@ -320,7 +345,7 @@
"from": {
"kind": "ImageStreamTag",
"namespace": "${IMAGE_STREAM_NAMESPACE}",
- "name": "redhat-sso71-openshift:1.2"
+ "name": "redhat-sso71-openshift:1.3"
}
}
},
@@ -341,13 +366,17 @@
}
},
"spec": {
- "serviceAccountName": "${SERVICE_ACCOUNT_NAME}",
"terminationGracePeriodSeconds": 75,
"containers": [
{
"name": "${APPLICATION_NAME}",
"image": "${APPLICATION_NAME}",
"imagePullPolicy": "Always",
+ "resources": {
+ "limits": {
+ "memory": "${MEMORY_LIMIT}"
+ }
+ },
"volumeMounts": [
{
"name": "eap-keystore-volume",
@@ -365,17 +394,6 @@
"readOnly": true
}
],
- "lifecycle": {
- "preStop": {
- "exec": {
- "command": [
- "/opt/eap/bin/jboss-cli.sh",
- "-c",
- ":shutdown(timeout=60)"
- ]
- }
- }
- },
"livenessProbe": {
"exec": {
"command": [
@@ -384,7 +402,7 @@
"/opt/eap/bin/livenessProbe.sh"
]
},
- "initialDelaySeconds": 10
+ "initialDelaySeconds": 60
},
"readinessProbe": {
"exec": {
@@ -431,16 +449,16 @@
"value": "${DB_TX_ISOLATION}"
},
{
- "name": "OPENSHIFT_KUBE_PING_LABELS",
- "value": "application=${APPLICATION_NAME}"
+ "name": "JGROUPS_PING_PROTOCOL",
+ "value": "openshift.DNS_PING"
+ },
+ {
+ "name": "OPENSHIFT_DNS_PING_SERVICE_NAME",
+ "value": "${APPLICATION_NAME}-ping"
},
{
- "name": "OPENSHIFT_KUBE_PING_NAMESPACE",
- "valueFrom": {
- "fieldRef": {
- "fieldPath": "metadata.namespace"
- }
- }
+ "name": "OPENSHIFT_DNS_PING_SERVICE_PORT",
+ "value": "8888"
},
{
"name": "HTTPS_KEYSTORE_DIR",
diff --git a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/sso71-mysql-persistent.json b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/sso71-mysql-persistent.json
index 7092bb65e..83de1ab37 100644
--- a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/sso71-mysql-persistent.json
+++ b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/sso71-mysql-persistent.json
@@ -5,7 +5,7 @@
"annotations": {
"iconClass" : "icon-sso",
"tags" : "sso,keycloak,jboss",
- "version": "1.4.7",
+ "version": "1.4.8",
"openshift.io/display-name": "Single Sign-On 7.1 + MySQL",
"openshift.io/provider-display-name": "Red Hat, Inc.",
"description": "An example SSO 7 application with a MySQL database. For more information about using this template, see https://github.com/jboss-openshift/application-templates.",
@@ -17,9 +17,9 @@
},
"labels": {
"template": "sso71-mysql-persistent",
- "xpaas": "1.4.7"
+ "xpaas": "1.4.8"
},
- "message": "A new persistent SSO service (using MySQL) has been created in your project. The admin username/password for accessing the master realm via the SSO console is ${SSO_ADMIN_USERNAME}/${SSO_ADMIN_PASSWORD}. The username/password for accessing the MySQL database \"${DB_DATABASE}\" is ${DB_USERNAME}/${DB_PASSWORD}. Please be sure to create the \"${SERVICE_ACCOUNT_NAME}\" service account and the following secrets: \"${HTTPS_SECRET}\" containing the ${HTTPS_KEYSTORE} file used for serving secure content; \"${JGROUPS_ENCRYPT_SECRET}\" containing the ${JGROUPS_ENCRYPT_KEYSTORE} file used for securing JGroups communications; \"${SSO_TRUSTSTORE_SECRET}\" containing the ${SSO_TRUSTSTORE} file used for securing SSO requests.",
+ "message": "A new persistent SSO service (using MySQL) has been created in your project. The admin username/password for accessing the master realm via the SSO console is ${SSO_ADMIN_USERNAME}/${SSO_ADMIN_PASSWORD}. The username/password for accessing the MySQL database \"${DB_DATABASE}\" is ${DB_USERNAME}/${DB_PASSWORD}. Please be sure to create the following secrets: \"${HTTPS_SECRET}\" containing the ${HTTPS_KEYSTORE} file used for serving secure content; \"${JGROUPS_ENCRYPT_SECRET}\" containing the ${JGROUPS_ENCRYPT_KEYSTORE} file used for securing JGroups communications; \"${SSO_TRUSTSTORE_SECRET}\" containing the ${SSO_TRUSTSTORE} file used for securing SSO requests.",
"parameters": [
{
"displayName": "Application Name",
@@ -57,13 +57,6 @@
"required": true
},
{
- "displayName": "Service Account Name",
- "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
- },
- {
"displayName": "Server Keystore Secret Name",
"description": "The name of the secret containing the keystore file",
"name": "HTTPS_SECRET",
@@ -166,7 +159,7 @@
"displayName": "Database Volume Capacity",
"description": "Size of persistent storage for database volume.",
"name": "VOLUME_CAPACITY",
- "value": "512Mi",
+ "value": "1Gi",
"required": true
},
{
@@ -276,6 +269,12 @@
"name": "MYSQL_IMAGE_STREAM_TAG",
"value": "5.7",
"required": true
+ },
+ {
+ "description": "Container memory limit",
+ "name": "MEMORY_LIMIT",
+ "value": "1Gi",
+ "required": false
}
],
"objects": [
@@ -354,6 +353,32 @@
}
},
{
+ "kind": "Service",
+ "apiVersion": "v1",
+ "spec": {
+ "clusterIP": "None",
+ "ports": [
+ {
+ "name": "ping",
+ "port": 8888
+ }
+ ],
+ "selector": {
+ "deploymentConfig": "${APPLICATION_NAME}"
+ }
+ },
+ "metadata": {
+ "name": "${APPLICATION_NAME}-ping",
+ "labels": {
+ "application": "${APPLICATION_NAME}"
+ },
+ "annotations": {
+ "service.alpha.kubernetes.io/tolerate-unready-endpoints": "true",
+ "description": "The JGroups ping port for clustering."
+ }
+ }
+ },
+ {
"kind": "Route",
"apiVersion": "v1",
"id": "${APPLICATION_NAME}-http",
@@ -420,7 +445,7 @@
"from": {
"kind": "ImageStreamTag",
"namespace": "${IMAGE_STREAM_NAMESPACE}",
- "name": "redhat-sso71-openshift:1.2"
+ "name": "redhat-sso71-openshift:1.3"
}
}
},
@@ -441,13 +466,17 @@
}
},
"spec": {
- "serviceAccountName": "${SERVICE_ACCOUNT_NAME}",
"terminationGracePeriodSeconds": 75,
"containers": [
{
"name": "${APPLICATION_NAME}",
"image": "${APPLICATION_NAME}",
"imagePullPolicy": "Always",
+ "resources": {
+ "limits": {
+ "memory": "${MEMORY_LIMIT}"
+ }
+ },
"volumeMounts": [
{
"name": "eap-keystore-volume",
@@ -465,17 +494,6 @@
"readOnly": true
}
],
- "lifecycle": {
- "preStop": {
- "exec": {
- "command": [
- "/opt/eap/bin/jboss-cli.sh",
- "-c",
- ":shutdown(timeout=60)"
- ]
- }
- }
- },
"livenessProbe": {
"exec": {
"command": [
@@ -484,7 +502,7 @@
"/opt/eap/bin/livenessProbe.sh"
]
},
- "initialDelaySeconds": 10
+ "initialDelaySeconds": 60
},
"readinessProbe": {
"exec": {
@@ -555,16 +573,16 @@
"value": "${DB_TX_ISOLATION}"
},
{
- "name": "OPENSHIFT_KUBE_PING_LABELS",
- "value": "application=${APPLICATION_NAME}"
+ "name": "JGROUPS_PING_PROTOCOL",
+ "value": "openshift.DNS_PING"
+ },
+ {
+ "name": "OPENSHIFT_DNS_PING_SERVICE_NAME",
+ "value": "${APPLICATION_NAME}-ping"
},
{
- "name": "OPENSHIFT_KUBE_PING_NAMESPACE",
- "valueFrom": {
- "fieldRef": {
- "fieldPath": "metadata.namespace"
- }
- }
+ "name": "OPENSHIFT_DNS_PING_SERVICE_PORT",
+ "value": "8888"
},
{
"name": "HTTPS_KEYSTORE_DIR",
diff --git a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/sso71-mysql.json b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/sso71-mysql.json
index d90f0a0cc..269761dac 100644
--- a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/sso71-mysql.json
+++ b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/sso71-mysql.json
@@ -5,7 +5,7 @@
"annotations": {
"iconClass" : "icon-sso",
"tags" : "sso,keycloak,jboss,hidden",
- "version": "1.4.7",
+ "version": "1.4.8",
"openshift.io/display-name": "Single Sign-On 7.1 + MySQL (Ephemeral)",
"openshift.io/provider-display-name": "Red Hat, Inc.",
"description": "An example SSO 7 application with a MySQL database. For more information about using this template, see https://github.com/jboss-openshift/application-templates.",
@@ -17,9 +17,9 @@
},
"labels": {
"template": "sso71-mysql",
- "xpaas": "1.4.7"
+ "xpaas": "1.4.8"
},
- "message": "A new SSO service (using MySQL) has been created in your project. The admin username/password for accessing the master realm via the SSO console is ${SSO_ADMIN_USERNAME}/${SSO_ADMIN_PASSWORD}. The username/password for accessing the MySQL database \"${DB_DATABASE}\" is ${DB_USERNAME}/${DB_PASSWORD}. Please be sure to create the \"${SERVICE_ACCOUNT_NAME}\" service account and the following secrets: \"${HTTPS_SECRET}\" containing the ${HTTPS_KEYSTORE} file used for serving secure content; \"${JGROUPS_ENCRYPT_SECRET}\" containing the ${JGROUPS_ENCRYPT_KEYSTORE} file used for securing JGroups communications; \"${SSO_TRUSTSTORE_SECRET}\" containing the ${SSO_TRUSTSTORE} file used for securing SSO requests.",
+ "message": "A new SSO service (using MySQL) has been created in your project. The admin username/password for accessing the master realm via the SSO console is ${SSO_ADMIN_USERNAME}/${SSO_ADMIN_PASSWORD}. The username/password for accessing the MySQL database \"${DB_DATABASE}\" is ${DB_USERNAME}/${DB_PASSWORD}. Please be sure to create the following secrets: \"${HTTPS_SECRET}\" containing the ${HTTPS_KEYSTORE} file used for serving secure content; \"${JGROUPS_ENCRYPT_SECRET}\" containing the ${JGROUPS_ENCRYPT_KEYSTORE} file used for securing JGroups communications; \"${SSO_TRUSTSTORE_SECRET}\" containing the ${SSO_TRUSTSTORE} file used for securing SSO requests.",
"parameters": [
{
"displayName": "Application Name",
@@ -57,13 +57,6 @@
"required": true
},
{
- "displayName": "Service Account Name",
- "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
- },
- {
"displayName": "Server Keystore Secret Name",
"description": "The name of the secret containing the keystore file",
"name": "HTTPS_SECRET",
@@ -269,6 +262,12 @@
"name": "MYSQL_IMAGE_STREAM_TAG",
"value": "5.7",
"required": true
+ },
+ {
+ "description": "Container memory limit",
+ "name": "MEMORY_LIMIT",
+ "value": "1Gi",
+ "required": false
}
],
"objects": [
@@ -350,6 +349,32 @@
}
},
{
+ "kind": "Service",
+ "apiVersion": "v1",
+ "spec": {
+ "clusterIP": "None",
+ "ports": [
+ {
+ "name": "ping",
+ "port": 8888
+ }
+ ],
+ "selector": {
+ "deploymentConfig": "${APPLICATION_NAME}"
+ }
+ },
+ "metadata": {
+ "name": "${APPLICATION_NAME}-ping",
+ "labels": {
+ "application": "${APPLICATION_NAME}"
+ },
+ "annotations": {
+ "service.alpha.kubernetes.io/tolerate-unready-endpoints": "true",
+ "description": "The JGroups ping port for clustering."
+ }
+ }
+ },
+ {
"kind": "Route",
"apiVersion": "v1",
"id": "${APPLICATION_NAME}-http",
@@ -419,7 +444,7 @@
"from": {
"kind": "ImageStreamTag",
"namespace": "${IMAGE_STREAM_NAMESPACE}",
- "name": "redhat-sso71-openshift:1.2"
+ "name": "redhat-sso71-openshift:1.3"
}
}
},
@@ -441,13 +466,17 @@
}
},
"spec": {
- "serviceAccountName": "${SERVICE_ACCOUNT_NAME}",
"terminationGracePeriodSeconds": 75,
"containers": [
{
"name": "${APPLICATION_NAME}",
"image": "${APPLICATION_NAME}",
"imagePullPolicy": "Always",
+ "resources": {
+ "limits": {
+ "memory": "${MEMORY_LIMIT}"
+ }
+ },
"volumeMounts": [
{
"name": "eap-keystore-volume",
@@ -465,17 +494,6 @@
"readOnly": true
}
],
- "lifecycle": {
- "preStop": {
- "exec": {
- "command": [
- "/opt/eap/bin/jboss-cli.sh",
- "-c",
- ":shutdown(timeout=60)"
- ]
- }
- }
- },
"livenessProbe": {
"exec": {
"command": [
@@ -484,7 +502,7 @@
"/opt/eap/bin/livenessProbe.sh"
]
},
- "initialDelaySeconds": 10
+ "initialDelaySeconds": 60
},
"readinessProbe": {
"exec": {
@@ -555,16 +573,16 @@
"value": "${DB_TX_ISOLATION}"
},
{
- "name": "OPENSHIFT_KUBE_PING_LABELS",
- "value": "application=${APPLICATION_NAME}"
+ "name": "JGROUPS_PING_PROTOCOL",
+ "value": "openshift.DNS_PING"
+ },
+ {
+ "name": "OPENSHIFT_DNS_PING_SERVICE_NAME",
+ "value": "${APPLICATION_NAME}-ping"
},
{
- "name": "OPENSHIFT_KUBE_PING_NAMESPACE",
- "valueFrom": {
- "fieldRef": {
- "fieldPath": "metadata.namespace"
- }
- }
+ "name": "OPENSHIFT_DNS_PING_SERVICE_PORT",
+ "value": "8888"
},
{
"name": "HTTPS_KEYSTORE_DIR",
@@ -761,8 +779,22 @@
"name": "MYSQL_AIO",
"value": "${MYSQL_AIO}"
}
+ ],
+ "volumeMounts": [
+ {
+ "mountPath": "/var/lib/mysql/data",
+ "name": "${APPLICATION_NAME}-data"
+ }
]
}
+ ],
+ "volumes": [
+ {
+ "emptyDir": {
+ "medium": ""
+ },
+ "name": "${APPLICATION_NAME}-data"
+ }
]
}
}
diff --git a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/sso71-postgresql-persistent.json b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/sso71-postgresql-persistent.json
index b1077db91..cd167d983 100644
--- a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/sso71-postgresql-persistent.json
+++ b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/sso71-postgresql-persistent.json
@@ -5,7 +5,7 @@
"annotations": {
"iconClass" : "icon-sso",
"tags" : "sso,keycloak,jboss",
- "version": "1.4.7",
+ "version": "1.4.8",
"openshift.io/display-name": "Single Sign-On 7.1 + PostgreSQL",
"openshift.io/provider-display-name": "Red Hat, Inc.",
"description": "An example SSO 7 application with a PostgreSQL database. For more information about using this template, see https://github.com/jboss-openshift/application-templates.",
@@ -17,9 +17,9 @@
},
"labels": {
"template": "sso71-postgresql-persistent",
- "xpaas": "1.4.7"
+ "xpaas": "1.4.8"
},
- "message": "A new persistent SSO service (using PostgreSQL) has been created in your project. The admin username/password for accessing the master realm via the SSO console is ${SSO_ADMIN_USERNAME}/${SSO_ADMIN_PASSWORD}. The username/password for accessing the PostgreSQL database \"${DB_DATABASE}\" is ${DB_USERNAME}/${DB_PASSWORD}. Please be sure to create the \"${SERVICE_ACCOUNT_NAME}\" service account and the following secrets: \"${HTTPS_SECRET}\" containing the ${HTTPS_KEYSTORE} file used for serving secure content; \"${JGROUPS_ENCRYPT_SECRET}\" containing the ${JGROUPS_ENCRYPT_KEYSTORE} file used for securing JGroups communications; \"${SSO_TRUSTSTORE_SECRET}\" containing the ${SSO_TRUSTSTORE} file used for securing SSO requests.",
+ "message": "A new persistent SSO service (using PostgreSQL) has been created in your project. The admin username/password for accessing the master realm via the SSO console is ${SSO_ADMIN_USERNAME}/${SSO_ADMIN_PASSWORD}. The username/password for accessing the PostgreSQL database \"${DB_DATABASE}\" is ${DB_USERNAME}/${DB_PASSWORD}. Please be sure to create the following secrets: \"${HTTPS_SECRET}\" containing the ${HTTPS_KEYSTORE} file used for serving secure content; \"${JGROUPS_ENCRYPT_SECRET}\" containing the ${JGROUPS_ENCRYPT_KEYSTORE} file used for securing JGroups communications; \"${SSO_TRUSTSTORE_SECRET}\" containing the ${SSO_TRUSTSTORE} file used for securing SSO requests.",
"parameters": [
{
"displayName": "Application Name",
@@ -57,13 +57,6 @@
"required": true
},
{
- "displayName": "Service Account Name",
- "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
- },
- {
"displayName": "Server Keystore Secret Name",
"description": "The name of the secret containing the keystore file",
"name": "HTTPS_SECRET",
@@ -148,7 +141,7 @@
"displayName": "Database Volume Capacity",
"description": "Size of persistent storage for database volume.",
"name": "VOLUME_CAPACITY",
- "value": "512Mi",
+ "value": "1Gi",
"required": true
},
{
@@ -258,6 +251,12 @@
"name": "POSTGRESQL_IMAGE_STREAM_TAG",
"value": "9.5",
"required": true
+ },
+ {
+ "description": "Container memory limit",
+ "name": "MEMORY_LIMIT",
+ "value": "1Gi",
+ "required": false
}
],
"objects": [
@@ -336,6 +335,32 @@
}
},
{
+ "kind": "Service",
+ "apiVersion": "v1",
+ "spec": {
+ "clusterIP": "None",
+ "ports": [
+ {
+ "name": "ping",
+ "port": 8888
+ }
+ ],
+ "selector": {
+ "deploymentConfig": "${APPLICATION_NAME}"
+ }
+ },
+ "metadata": {
+ "name": "${APPLICATION_NAME}-ping",
+ "labels": {
+ "application": "${APPLICATION_NAME}"
+ },
+ "annotations": {
+ "service.alpha.kubernetes.io/tolerate-unready-endpoints": "true",
+ "description": "The JGroups ping port for clustering."
+ }
+ }
+ },
+ {
"kind": "Route",
"apiVersion": "v1",
"id": "${APPLICATION_NAME}-http",
@@ -402,7 +427,7 @@
"from": {
"kind": "ImageStreamTag",
"namespace": "${IMAGE_STREAM_NAMESPACE}",
- "name": "redhat-sso71-openshift:1.2"
+ "name": "redhat-sso71-openshift:1.3"
}
}
},
@@ -423,13 +448,17 @@
}
},
"spec": {
- "serviceAccountName": "${SERVICE_ACCOUNT_NAME}",
"terminationGracePeriodSeconds": 75,
"containers": [
{
"name": "${APPLICATION_NAME}",
"image": "${APPLICATION_NAME}",
"imagePullPolicy": "Always",
+ "resources": {
+ "limits": {
+ "memory": "${MEMORY_LIMIT}"
+ }
+ },
"volumeMounts": [
{
"name": "eap-keystore-volume",
@@ -447,17 +476,6 @@
"readOnly": true
}
],
- "lifecycle": {
- "preStop": {
- "exec": {
- "command": [
- "/opt/eap/bin/jboss-cli.sh",
- "-c",
- ":shutdown(timeout=60)"
- ]
- }
- }
- },
"livenessProbe": {
"exec": {
"command": [
@@ -466,7 +484,7 @@
"/opt/eap/bin/livenessProbe.sh"
]
},
- "initialDelaySeconds": 10
+ "initialDelaySeconds": 60
},
"readinessProbe": {
"exec": {
@@ -537,16 +555,16 @@
"value": "${DB_TX_ISOLATION}"
},
{
- "name": "OPENSHIFT_KUBE_PING_LABELS",
- "value": "application=${APPLICATION_NAME}"
+ "name": "JGROUPS_PING_PROTOCOL",
+ "value": "openshift.DNS_PING"
+ },
+ {
+ "name": "OPENSHIFT_DNS_PING_SERVICE_NAME",
+ "value": "${APPLICATION_NAME}-ping"
},
{
- "name": "OPENSHIFT_KUBE_PING_NAMESPACE",
- "valueFrom": {
- "fieldRef": {
- "fieldPath": "metadata.namespace"
- }
- }
+ "name": "OPENSHIFT_DNS_PING_SERVICE_PORT",
+ "value": "8888"
},
{
"name": "HTTPS_KEYSTORE_DIR",
diff --git a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/sso71-postgresql.json b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/sso71-postgresql.json
index 0955d712a..365383f8a 100644
--- a/roles/openshift_examples/files/examples/v3.9/xpaas-templates/sso71-postgresql.json
+++ b/roles/openshift_examples/files/examples/v3.9/xpaas-templates/sso71-postgresql.json
@@ -5,7 +5,7 @@
"annotations": {
"iconClass" : "icon-sso",
"tags" : "sso,keycloak,jboss,hidden",
- "version": "1.4.7",
+ "version": "1.4.8",
"openshift.io/display-name": "Single Sign-On 7.1 + PostgreSQL (Ephemeral)",
"openshift.io/provider-display-name": "Red Hat, Inc.",
"description": "An example SSO 7 application with a PostgreSQL database. For more information about using this template, see https://github.com/jboss-openshift/application-templates.",
@@ -17,9 +17,9 @@
},
"labels": {
"template": "sso71-postgresql",
- "xpaas": "1.4.7"
+ "xpaas": "1.4.8"
},
- "message": "A new SSO service (using PostgreSQL) has been created in your project. The admin username/password for accessing the master realm via the SSO console is ${SSO_ADMIN_USERNAME}/${SSO_ADMIN_PASSWORD}. The username/password for accessing the PostgreSQL database \"${DB_DATABASE}\" is ${DB_USERNAME}/${DB_PASSWORD}. Please be sure to create the \"${SERVICE_ACCOUNT_NAME}\" service account and the following secrets: \"${HTTPS_SECRET}\" containing the ${HTTPS_KEYSTORE} file used for serving secure content; \"${JGROUPS_ENCRYPT_SECRET}\" containing the ${JGROUPS_ENCRYPT_KEYSTORE} file used for securing JGroups communications; \"${SSO_TRUSTSTORE_SECRET}\" containing the ${SSO_TRUSTSTORE} file used for securing SSO requests.",
+ "message": "A new SSO service (using PostgreSQL) has been created in your project. The admin username/password for accessing the master realm via the SSO console is ${SSO_ADMIN_USERNAME}/${SSO_ADMIN_PASSWORD}. The username/password for accessing the PostgreSQL database \"${DB_DATABASE}\" is ${DB_USERNAME}/${DB_PASSWORD}. Please be sure to create the following secrets: \"${HTTPS_SECRET}\" containing the ${HTTPS_KEYSTORE} file used for serving secure content; \"${JGROUPS_ENCRYPT_SECRET}\" containing the ${JGROUPS_ENCRYPT_KEYSTORE} file used for securing JGroups communications; \"${SSO_TRUSTSTORE_SECRET}\" containing the ${SSO_TRUSTSTORE} file used for securing SSO requests.",
"parameters": [
{
"displayName": "Application Name",
@@ -57,13 +57,6 @@
"required": true
},
{
- "displayName": "Service Account Name",
- "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
- },
- {
"displayName": "Server Keystore Secret Name",
"description": "The name of the secret containing the keystore file",
"name": "HTTPS_SECRET",
@@ -251,6 +244,12 @@
"name": "POSTGRESQL_IMAGE_STREAM_TAG",
"value": "9.5",
"required": true
+ },
+ {
+ "description": "Container memory limit",
+ "name": "MEMORY_LIMIT",
+ "value": "1Gi",
+ "required": false
}
],
"objects": [
@@ -332,6 +331,32 @@
}
},
{
+ "kind": "Service",
+ "apiVersion": "v1",
+ "spec": {
+ "clusterIP": "None",
+ "ports": [
+ {
+ "name": "ping",
+ "port": 8888
+ }
+ ],
+ "selector": {
+ "deploymentConfig": "${APPLICATION_NAME}"
+ }
+ },
+ "metadata": {
+ "name": "${APPLICATION_NAME}-ping",
+ "labels": {
+ "application": "${APPLICATION_NAME}"
+ },
+ "annotations": {
+ "service.alpha.kubernetes.io/tolerate-unready-endpoints": "true",
+ "description": "The JGroups ping port for clustering."
+ }
+ }
+ },
+ {
"kind": "Route",
"apiVersion": "v1",
"id": "${APPLICATION_NAME}-http",
@@ -401,7 +426,7 @@
"from": {
"kind": "ImageStreamTag",
"namespace": "${IMAGE_STREAM_NAMESPACE}",
- "name": "redhat-sso71-openshift:1.2"
+ "name": "redhat-sso71-openshift:1.3"
}
}
},
@@ -423,13 +448,17 @@
}
},
"spec": {
- "serviceAccountName": "${SERVICE_ACCOUNT_NAME}",
"terminationGracePeriodSeconds": 75,
"containers": [
{
"name": "${APPLICATION_NAME}",
"image": "${APPLICATION_NAME}",
"imagePullPolicy": "Always",
+ "resources": {
+ "limits": {
+ "memory": "${MEMORY_LIMIT}"
+ }
+ },
"volumeMounts": [
{
"name": "eap-keystore-volume",
@@ -447,17 +476,6 @@
"readOnly": true
}
],
- "lifecycle": {
- "preStop": {
- "exec": {
- "command": [
- "/opt/eap/bin/jboss-cli.sh",
- "-c",
- ":shutdown(timeout=60)"
- ]
- }
- }
- },
"livenessProbe": {
"exec": {
"command": [
@@ -466,7 +484,7 @@
"/opt/eap/bin/livenessProbe.sh"
]
},
- "initialDelaySeconds": 10
+ "initialDelaySeconds": 60
},
"readinessProbe": {
"exec": {
@@ -537,16 +555,16 @@
"value": "${DB_TX_ISOLATION}"
},
{
- "name": "OPENSHIFT_KUBE_PING_LABELS",
- "value": "application=${APPLICATION_NAME}"
+ "name": "JGROUPS_PING_PROTOCOL",
+ "value": "openshift.DNS_PING"
+ },
+ {
+ "name": "OPENSHIFT_DNS_PING_SERVICE_NAME",
+ "value": "${APPLICATION_NAME}-ping"
},
{
- "name": "OPENSHIFT_KUBE_PING_NAMESPACE",
- "valueFrom": {
- "fieldRef": {
- "fieldPath": "metadata.namespace"
- }
- }
+ "name": "OPENSHIFT_DNS_PING_SERVICE_PORT",
+ "value": "8888"
},
{
"name": "HTTPS_KEYSTORE_DIR",
@@ -735,8 +753,22 @@
"name": "POSTGRESQL_SHARED_BUFFERS",
"value": "${POSTGRESQL_SHARED_BUFFERS}"
}
+ ],
+ "volumeMounts": [
+ {
+ "mountPath": "/var/lib/pgsql/data",
+ "name": "${APPLICATION_NAME}-data"
+ }
]
}
+ ],
+ "volumes": [
+ {
+ "emptyDir": {
+ "medium": ""
+ },
+ "name": "${APPLICATION_NAME}-data"
+ }
]
}
}