diff options
386 files changed, 18830 insertions, 4543 deletions
diff --git a/.tito/packages/openshift-ansible b/.tito/packages/openshift-ansible index 1266921a6..3ab6b3fb1 100644 --- a/.tito/packages/openshift-ansible +++ b/.tito/packages/openshift-ansible @@ -1 +1 @@ -3.9.0-0.41.0 ./ +3.9.0-0.42.0 ./ diff --git a/inventory/hosts.example b/inventory/hosts.example index 82c588100..b2237df3c 100644 --- a/inventory/hosts.example +++ b/inventory/hosts.example @@ -934,6 +934,9 @@ openshift_master_identity_providers=[{'name': 'htpasswd_auth', 'login': 'true', # Force a specific image version to use when pulling the service catalog image #openshift_service_catalog_image_version=v3.7 +# TSB image tag +#template_service_broker_version='v3.7' + # Configure one of more namespaces whose templates will be served by the TSB #openshift_template_service_broker_namespaces=['openshift'] diff --git a/openshift-ansible.spec b/openshift-ansible.spec index ae0104b27..531aa63b3 100644 --- a/openshift-ansible.spec +++ b/openshift-ansible.spec @@ -10,7 +10,7 @@ Name: openshift-ansible Version: 3.9.0 -Release: 0.41.0%{?dist} +Release: 0.42.0%{?dist} Summary: Openshift and Atomic Enterprise Ansible License: ASL 2.0 URL: https://github.com/openshift/openshift-ansible @@ -201,6 +201,57 @@ Atomic OpenShift Utilities includes %changelog +* Fri Feb 09 2018 Justin Pierce <jupierce@redhat.com> 3.9.0-0.42.0 +- xPaaS v1.4.8 for v3.7 (sdodson@redhat.com) +- xPaaS v1.4.8-1 for v3.8 (sdodson@redhat.com) +- xPaaS v1.4.8-1 for v3.9 (sdodson@redhat.com) +- Bump xpaas version (sdodson@redhat.com) +- Bug 1524805- CFME example now works disconnected (fabian@fabianism.us) +- Only try to yaml.load a file if it ends in .yml or .yaml in logging facts + (ewolinet@redhat.com) +- Set default image tag to openshift_image_tag for services + (vrutkovs@redhat.com) +- Redeploy router certificates during upgrade only when secure. + (kwoodson@redhat.com) +- GlusterFS: Fix block StorageClass heketi route (jarrpa@redhat.com) +- changed oc to {{ openshift_client_binary }} (datarace101@gmail.com) +- Use v3.9 web-console image for now (sdodson@redhat.com) +- Adding ability to provide additional mounts to crio system container. + (kwoodson@redhat.com) +- Remove spaces introduced at the start of the line + (geoff.newson@googlemail.com) +- Changing the check for the number of etcd nodes (geoff.newson@gmail.com) +- aws ami: make it so the tags from the orinal AMI are used with the newly + created AMI (mwoodson@redhat.com) +- Setup docker excluder if requested before container_runtime is installed + (vrutkovs@redhat.com) +- openshift_node: Remove master from aws node building (smilner@redhat.com) +- Use wait_for_connection to validate ssh transport is alive + (sdodson@redhat.com) +- Bug 1541625- properly cast provided ip address to unicode + (fabian@fabianism.us) +- Add base package installation to upgrade playbooks (rteague@redhat.com) +- 3.9 upgrade: fix typos in restart masters procedure (vrutkovs@redhat.com) +- quick installer: disable broken test_get_hosts_to_run_on6 test + (vrutkovs@redhat.com) +- Quick installer: run prerequistes first and update path to main playbook + (vrutkovs@redhat.com) +- Fix uninstall using openshift_prometheus_state=absent (zgalor@redhat.com) +- Detect config changes in console liveness probe (spadgett@redhat.com) +- Fix master and node system container variables (mgugino@redhat.com) +- Correct the list of certificates checked in openshift_master_certificates + s.t. masters do not incorrectly report that master certs are missing. + (abutcher@redhat.com) +- tag fix without ose- (rcook@redhat.com) +- lib_utils_oo_collect: Allow filtering on dot separated keys. + (abutcher@redhat.com) +- Determine which etcd host is the etcd_ca_host rather than assume it is the + first host in the etcd host group. (abutcher@redhat.com) +- Attempt to back up generated certificates on every etcd host. + (abutcher@redhat.com) +- Remove pre upgrade verification step re: etcd ca host. (abutcher@redhat.com) +- Revert "GlusterFS: Remove image option from heketi command" (hansmi@vshn.ch) + * Wed Feb 07 2018 Justin Pierce <jupierce@redhat.com> 3.9.0-0.41.0 - Allow OVS 2.7 in OCP 3.10 (sdodson@redhat.com) - GlusterFS: Minor documentation update (jarrpa@redhat.com) diff --git a/playbooks/common/openshift-cluster/upgrades/post_control_plane.yml b/playbooks/common/openshift-cluster/upgrades/post_control_plane.yml index 9c927c0a1..86cde2844 100644 --- a/playbooks/common/openshift-cluster/upgrades/post_control_plane.yml +++ b/playbooks/common/openshift-cluster/upgrades/post_control_plane.yml @@ -114,23 +114,27 @@ openshift_hosted_templates_import_command: replace post_tasks: - # we need to migrate customers to the new pattern of pushing to the registry via dns - # Step 1: verify the certificates have the docker registry service name - - shell: > - echo -n | openssl s_client -showcerts -servername docker-registry.default.svc -connect docker-registry.default.svc:5000 | openssl x509 -text | grep -A1 'X509v3 Subject Alternative Name:' | grep -Pq 'DNS:docker-registry\.default\.svc(,|$)' - register: cert_output - changed_when: false - failed_when: - - cert_output.rc not in [0, 1] - - # Step 2: Set a fact to be used to determine if we should run the redeploy of registry certs - - name: set a fact to include the registry certs playbook if needed - set_fact: - openshift_hosted_rollout_certs_and_registry: "{{ cert_output.rc == 0 }}" - -# Run the redeploy certs based upon the certificates -- when: hostvars[groups.oo_first_master.0].openshift_hosted_rollout_certs_and_registry - import_playbook: ../../../openshift-hosted/redeploy-registry-certificates.yml + # Do not perform these tasks when the registry is insecure. The default registry is insecure in openshift_hosted/defaults/main.yml + - when: not (openshift_docker_hosted_registry_insecure | default(True)) + block: + # we need to migrate customers to the new pattern of pushing to the registry via dns + # Step 1: verify the certificates have the docker registry service name + - name: shell command to determine if the docker-registry.default.svc is found in the registry certificate + shell: > + echo -n | openssl s_client -showcerts -servername docker-registry.default.svc -connect docker-registry.default.svc:5000 | openssl x509 -text | grep -A1 'X509v3 Subject Alternative Name:' | grep -Pq 'DNS:docker-registry\.default\.svc(,|$)' + register: cert_output + changed_when: false + failed_when: + - cert_output.rc not in [0, 1] + + # Step 2: Set a fact to be used to determine if we should run the redeploy of registry certs + - name: set a fact to include the registry certs playbook if needed + set_fact: + openshift_hosted_rollout_certs_and_registry: "{{ cert_output.rc == 0 }}" + +# Run the redeploy certs based upon the certificates. Defaults to False for insecure registries +- when: (hostvars[groups.oo_first_master.0].openshift_hosted_rollout_certs_and_registry | default(False)) | bool + import_playbook: ../../../openshift-hosted/private/redeploy-registry-certificates.yml # Check for warnings to be printed at the end of the upgrade: - name: Clean up and display warnings diff --git a/playbooks/common/openshift-cluster/upgrades/pre/verify_cluster.yml b/playbooks/common/openshift-cluster/upgrades/pre/verify_cluster.yml index 463a05688..4902b9ecd 100644 --- a/playbooks/common/openshift-cluster/upgrades/pre/verify_cluster.yml +++ b/playbooks/common/openshift-cluster/upgrades/pre/verify_cluster.yml @@ -94,25 +94,3 @@ state: started enabled: yes with_items: "{{ master_services }}" - -# Until openshift-ansible is determining which host is the CA host we -# must (unfortunately) ensure that the first host in the etcd group is -# the etcd CA host. -# https://bugzilla.redhat.com/show_bug.cgi?id=1469358 -- name: Verify we can proceed on first etcd - hosts: oo_first_etcd - gather_facts: no - tasks: - - name: Ensure CA exists on first etcd - stat: - path: /etc/etcd/generated_certs - register: __etcd_ca_stat - - - fail: - msg: > - In order to correct an etcd certificate signing problem - upgrading may require re-generating etcd certificates. Please - ensure that the /etc/etcd/generated_certs directory exists on - the first host defined in your [etcd] group. - when: - - not __etcd_ca_stat.stat.exists | bool diff --git a/playbooks/init/evaluate_groups.yml b/playbooks/init/evaluate_groups.yml index e8bf1892c..81d7d63ca 100644 --- a/playbooks/init/evaluate_groups.yml +++ b/playbooks/init/evaluate_groups.yml @@ -51,7 +51,7 @@ upgrade please see https://docs.openshift.com/container-platform/latest/install_config/upgrading/migrating_embedded_etcd.html for documentation on how to migrate from embedded to external etcd. when: - - g_etcd_hosts | default([]) | length not in [5,3,1] + - g_etcd_hosts | default([]) | length == 0 - not (openshift_node_bootstrap | default(False)) - name: Evaluate oo_all_hosts diff --git a/playbooks/openshift-etcd/private/ca.yml b/playbooks/openshift-etcd/private/ca.yml index 72c39d546..77e7b0ed0 100644 --- a/playbooks/openshift-etcd/private/ca.yml +++ b/playbooks/openshift-etcd/private/ca.yml @@ -10,7 +10,6 @@ tasks_from: ca.yml vars: etcd_peers: "{{ groups.oo_etcd_to_config | default([], true) }}" - etcd_ca_host: "{{ groups.oo_etcd_to_config.0 }}" etcd_certificates_etcd_hosts: "{{ groups.oo_etcd_to_config | default([], true) }}" when: - etcd_ca_setup | default(True) | bool diff --git a/playbooks/openshift-etcd/private/certificates-backup.yml b/playbooks/openshift-etcd/private/certificates-backup.yml index 2f9bef799..e1354de67 100644 --- a/playbooks/openshift-etcd/private/certificates-backup.yml +++ b/playbooks/openshift-etcd/private/certificates-backup.yml @@ -1,6 +1,6 @@ --- - name: Backup and remove generated etcd certificates - hosts: oo_first_etcd + hosts: oo_etcd_to_config any_errors_fatal: true tasks: - import_role: diff --git a/playbooks/openshift-etcd/private/config.yml b/playbooks/openshift-etcd/private/config.yml index 35407969e..bbc952d8e 100644 --- a/playbooks/openshift-etcd/private/config.yml +++ b/playbooks/openshift-etcd/private/config.yml @@ -22,7 +22,6 @@ - role: openshift_clock - role: openshift_etcd etcd_peers: "{{ groups.oo_etcd_to_config | default([], true) }}" - etcd_ca_host: "{{ groups.oo_etcd_to_config.0 }}" etcd_certificates_etcd_hosts: "{{ groups.oo_etcd_to_config | default([], true) }}" - role: nickhammond.logrotate diff --git a/playbooks/openshift-etcd/private/master_etcd_certificates.yml b/playbooks/openshift-etcd/private/master_etcd_certificates.yml index d98470db2..4e4972dba 100644 --- a/playbooks/openshift-etcd/private/master_etcd_certificates.yml +++ b/playbooks/openshift-etcd/private/master_etcd_certificates.yml @@ -5,9 +5,7 @@ roles: - role: openshift_etcd_facts - role: openshift_etcd_client_certificates - etcd_ca_host: "{{ groups.oo_etcd_to_config.0 }}" etcd_cert_subdir: "openshift-master-{{ openshift.common.hostname }}" etcd_cert_config_dir: "{{ openshift.common.config_base }}/master" etcd_cert_prefix: "master.etcd-" - openshift_ca_host: "{{ groups.oo_first_master.0 }}" when: groups.oo_etcd_to_config is defined and groups.oo_etcd_to_config diff --git a/playbooks/openshift-etcd/private/redeploy-ca.yml b/playbooks/openshift-etcd/private/redeploy-ca.yml index a3acf6945..55409e503 100644 --- a/playbooks/openshift-etcd/private/redeploy-ca.yml +++ b/playbooks/openshift-etcd/private/redeploy-ca.yml @@ -45,7 +45,6 @@ tasks_from: distribute_ca.yml vars: etcd_sync_cert_dir: "{{ hostvars['localhost'].g_etcd_mktemp.stdout }}" - etcd_ca_host: "{{ groups.oo_etcd_to_config.0 }}" - import_playbook: restart.yml # Do not restart etcd when etcd certificates were previously expired. diff --git a/playbooks/openshift-etcd/private/scaleup.yml b/playbooks/openshift-etcd/private/scaleup.yml index 8a9811a25..162a5eba7 100644 --- a/playbooks/openshift-etcd/private/scaleup.yml +++ b/playbooks/openshift-etcd/private/scaleup.yml @@ -12,8 +12,6 @@ hosts: oo_new_etcd_to_config serial: 1 any_errors_fatal: true - vars: - etcd_ca_host: "{{ groups.oo_etcd_to_config.0 }}" pre_tasks: - name: Add new etcd members to cluster command: > @@ -42,7 +40,6 @@ - role: openshift_etcd when: etcd_add_check.rc == 0 etcd_peers: "{{ groups.oo_etcd_to_config | union(groups.oo_new_etcd_to_config)| default([], true) }}" - etcd_ca_host: "{{ groups.oo_etcd_to_config.0 }}" etcd_certificates_etcd_hosts: "{{ groups.oo_etcd_to_config | default([], true) }}" etcd_initial_cluster_state: "existing" etcd_initial_cluster: "{{ etcd_add_check.stdout_lines[3] | regex_replace('ETCD_INITIAL_CLUSTER=','') | regex_replace('\"','') }}" @@ -66,8 +63,6 @@ hosts: oo_masters_to_config serial: 1 vars: - etcd_ca_host: "{{ groups.oo_etcd_to_config.0 }}" - openshift_ca_host: "{{ groups.oo_first_master.0 }}" openshift_master_etcd_hosts: "{{ hostvars | lib_utils_oo_select_keys(groups['oo_etcd_to_config'] | union(groups['oo_new_etcd_to_config'] | default([]) )) | lib_utils_oo_collect('openshift.common.hostname') diff --git a/playbooks/openshift-etcd/private/server_certificates.yml b/playbooks/openshift-etcd/private/server_certificates.yml index ebcf4a5ff..0abfe1650 100644 --- a/playbooks/openshift-etcd/private/server_certificates.yml +++ b/playbooks/openshift-etcd/private/server_certificates.yml @@ -9,6 +9,5 @@ name: etcd tasks_from: server_certificates.yml vars: - etcd_ca_host: "{{ groups.oo_etcd_to_config.0 }}" etcd_peers: "{{ groups.oo_etcd_to_config | default([], true) }}" etcd_certificates_etcd_hosts: "{{ groups.oo_etcd_to_config | default([], true) }}" diff --git a/playbooks/openshift-master/private/scaleup.yml b/playbooks/openshift-master/private/scaleup.yml index 20ebf70d3..5aaa0b156 100644 --- a/playbooks/openshift-master/private/scaleup.yml +++ b/playbooks/openshift-master/private/scaleup.yml @@ -45,7 +45,7 @@ - import_playbook: set_network_facts.yml -- import_playbook: ../../openshift-etcd/private/certificates.yml +- import_playbook: ../../openshift-etcd/private/master_etcd_certificates.yml - import_playbook: config.yml diff --git a/playbooks/openshift-node/private/etcd_client_config.yml b/playbooks/openshift-node/private/etcd_client_config.yml index c3fa38a81..148bdc769 100644 --- a/playbooks/openshift-node/private/etcd_client_config.yml +++ b/playbooks/openshift-node/private/etcd_client_config.yml @@ -6,6 +6,5 @@ - role: openshift_etcd_facts - role: openshift_etcd_client_certificates etcd_cert_prefix: flannel.etcd- - etcd_ca_host: "{{ groups.oo_etcd_to_config.0 }}" etcd_cert_subdir: "openshift-node-{{ openshift.common.hostname }}" etcd_cert_config_dir: "{{ openshift.common.config_base }}/node" diff --git a/roles/ansible_service_broker/vars/openshift-enterprise.yml b/roles/ansible_service_broker/vars/openshift-enterprise.yml index c203f596e..15a7e5477 100644 --- a/roles/ansible_service_broker/vars/openshift-enterprise.yml +++ b/roles/ansible_service_broker/vars/openshift-enterprise.yml @@ -1,7 +1,7 @@ --- __ansible_service_broker_image_prefix: registry.access.redhat.com/openshift3/ose- -__ansible_service_broker_image_tag: v3.7 +__ansible_service_broker_image_tag: "{{ openshift_image_tag }}" __ansible_service_broker_etcd_image_prefix: registry.access.redhat.com/rhel7/ __ansible_service_broker_etcd_image_tag: latest @@ -14,6 +14,6 @@ __ansible_service_broker_registry_url: "https://registry.access.redhat.com" __ansible_service_broker_registry_user: null __ansible_service_broker_registry_password: null __ansible_service_broker_registry_organization: null -__ansible_service_broker_registry_tag: v3.7 +__ansible_service_broker_registry_tag: "{{ openshift_image_tag }}" __ansible_service_broker_registry_whitelist: - '.*-apb$' diff --git a/roles/container_runtime/defaults/main.yml b/roles/container_runtime/defaults/main.yml index 7397e2bec..22e16d29d 100644 --- a/roles/container_runtime/defaults/main.yml +++ b/roles/container_runtime/defaults/main.yml @@ -94,6 +94,16 @@ l_insecure_crio_registries: "{{ '\"{}\"'.format('\", \"'.join(l2_docker_insecure l_crio_registries: "{{ l2_docker_additional_registries + ['docker.io'] }}" l_additional_crio_registries: "{{ '\"{}\"'.format('\", \"'.join(l_crio_registries)) }}" +# this is a list of dictionaries of mounts +# container_runtime_crio_additional_mounts: +# - destination: /test +# source: /var/test +# options: +# - rw +# - mode=755 +container_runtime_crio_additional_mounts: [] + +l_crio_additional_mounts: "{{ ',' + (container_runtime_crio_additional_mounts | lib_utils_oo_l_of_d_to_csv) if container_runtime_crio_additional_mounts != [] else '' }}" openshift_crio_image_tag_default: "latest" diff --git a/roles/container_runtime/tasks/systemcontainer_crio.yml b/roles/container_runtime/tasks/systemcontainer_crio.yml index d588f2618..f053bdea5 100644 --- a/roles/container_runtime/tasks/systemcontainer_crio.yml +++ b/roles/container_runtime/tasks/systemcontainer_crio.yml @@ -53,6 +53,8 @@ name: "cri-o" image: "{{ l_crio_image }}" state: latest + values: + - "ADDTL_MOUNTS={{ l_crio_additional_mounts }}" - name: Remove CRI-O default configuration files file: diff --git a/roles/lib_utils/filter_plugins/oo_filters.py b/roles/lib_utils/filter_plugins/oo_filters.py index 574743ff1..c355115b5 100644 --- a/roles/lib_utils/filter_plugins/oo_filters.py +++ b/roles/lib_utils/filter_plugins/oo_filters.py @@ -126,7 +126,7 @@ def lib_utils_oo_collect(data_list, attribute=None, filters=None): raise errors.AnsibleFilterError( "lib_utils_oo_collect expects filter to be a dict") retval.extend([get_attr(d, attribute) for d in data if ( - all([d.get(key, None) == filters[key] for key in filters]))]) + all([get_attr(d, key) == filters[key] for key in filters]))]) else: retval.extend([get_attr(d, attribute) for d in data]) diff --git a/roles/openshift_etcd_facts/defaults/main.yml b/roles/openshift_etcd_facts/defaults/main.yml new file mode 100644 index 000000000..d13e7c912 --- /dev/null +++ b/roles/openshift_etcd_facts/defaults/main.yml @@ -0,0 +1,2 @@ +--- +etcd_ca_host_group: "oo_etcd_to_config" diff --git a/roles/openshift_etcd_facts/tasks/main.yml b/roles/openshift_etcd_facts/tasks/main.yml index ed97d539c..86546f4e3 100644 --- a/roles/openshift_etcd_facts/tasks/main.yml +++ b/roles/openshift_etcd_facts/tasks/main.yml @@ -1 +1,2 @@ --- +- import_tasks: set_etcd_ca_host.yml diff --git a/roles/openshift_etcd_facts/tasks/set_etcd_ca_host.yml b/roles/openshift_etcd_facts/tasks/set_etcd_ca_host.yml new file mode 100644 index 000000000..bf8d28a9b --- /dev/null +++ b/roles/openshift_etcd_facts/tasks/set_etcd_ca_host.yml @@ -0,0 +1,44 @@ +--- +- name: Check for CA indicator files + stat: + path: "{{ item.0 }}" + delegate_to: "{{ item.1 }}" + with_nested: + - - /etc/etcd/ca + - /etc/etcd/generated_certs + - "{{ groups[etcd_ca_host_group] }}" + register: __etcd_ca_host_stat + run_once: true + +# Collect ansible_host (inventory hostname) of hosts with /etc/etcd/ca +# and /etc/etcd/generated_certs directories. +- set_fact: + __etcd_ca_dir_hosts: "{{ __etcd_ca_host_stat.results + | lib_utils_oo_collect('_ansible_delegated_vars.ansible_host', + filters={'stat.path':'/etc/etcd/ca','stat.exists':True}) }}" + __etcd_generated_certs_dir_hosts: "{{ __etcd_ca_host_stat.results + | lib_utils_oo_collect('_ansible_delegated_vars.ansible_host', + filters={'stat.path':'/etc/etcd/generated_certs','stat.exists':True}) }}" + run_once: true + +# __etcd_ca_hosts is the intersection of hosts which have /etc/etcd/ca +# and /etc/etcd/generated_certs directories. +- set_fact: + __etcd_ca_hosts: "{{ __etcd_ca_dir_hosts | intersect(__etcd_generated_certs_dir_hosts) }}" + run_once: true + +# __etcd_ca_hosts should only contain one host. If more than one host +# is able to be an etcd CA host then we will use the first. +- set_fact: + etcd_ca_host: "{{ __etcd_ca_hosts[0] }}" + when: + - __etcd_ca_hosts | length > 0 + - etcd_ca_host is not defined + +# No etcd_ca_host was found in __etcd_ca_hosts. This is probably a +# fresh installation so we will default to the first member of the +# etcd host group. +- set_fact: + etcd_ca_host: "{{ groups[etcd_ca_host_group].0 }}" + when: + - etcd_ca_host is not defined diff --git a/roles/openshift_examples/examples-sync.sh b/roles/openshift_examples/examples-sync.sh index 648bf7293..aaf52dd79 100755 --- a/roles/openshift_examples/examples-sync.sh +++ b/roles/openshift_examples/examples-sync.sh @@ -5,7 +5,7 @@ # # This script should be run from openshift-ansible/roles/openshift_examples -XPAAS_VERSION=ose-v1.4.7 +XPAAS_VERSION=ose-v1.4.8-1 ORIGIN_VERSION=${1:-v3.9} RHAMP_TAG=2.0.0.GA EXAMPLES_BASE=$(pwd)/files/examples/${ORIGIN_VERSION} diff --git a/roles/openshift_examples/files/examples/v3.7/xpaas-streams/jboss-image-streams.json b/roles/openshift_examples/files/examples/v3.7/xpaas-streams/jboss-image-streams.json index ed2dbf572..7281864f8 100644 --- a/roles/openshift_examples/files/examples/v3.7/xpaas-streams/jboss-image-streams.json +++ b/roles/openshift_examples/files/examples/v3.7/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.7/xpaas-templates/amq62-basic.json b/roles/openshift_examples/files/examples/v3.7/xpaas-templates/amq62-basic.json index 8f8e14cb6..134a577b6 100644 --- a/roles/openshift_examples/files/examples/v3.7/xpaas-templates/amq62-basic.json +++ b/roles/openshift_examples/files/examples/v3.7/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.7/xpaas-templates/amq62-persistent-ssl.json b/roles/openshift_examples/files/examples/v3.7/xpaas-templates/amq62-persistent-ssl.json index 96f9d616f..5a034d0ba 100644 --- a/roles/openshift_examples/files/examples/v3.7/xpaas-templates/amq62-persistent-ssl.json +++ b/roles/openshift_examples/files/examples/v3.7/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.7/xpaas-templates/amq62-persistent.json b/roles/openshift_examples/files/examples/v3.7/xpaas-templates/amq62-persistent.json index 67c812fb4..bc62098ee 100644 --- a/roles/openshift_examples/files/examples/v3.7/xpaas-templates/amq62-persistent.json +++ b/roles/openshift_examples/files/examples/v3.7/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.7/xpaas-templates/amq62-ssl.json b/roles/openshift_examples/files/examples/v3.7/xpaas-templates/amq62-ssl.json index 9f488820c..38a291fe9 100644 --- a/roles/openshift_examples/files/examples/v3.7/xpaas-templates/amq62-ssl.json +++ b/roles/openshift_examples/files/examples/v3.7/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.7/xpaas-templates/amq63-basic.json b/roles/openshift_examples/files/examples/v3.7/xpaas-templates/amq63-basic.json index e13530764..b72a5adb2 100644 --- a/roles/openshift_examples/files/examples/v3.7/xpaas-templates/amq63-basic.json +++ b/roles/openshift_examples/files/examples/v3.7/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.7/xpaas-templates/amq63-persistent-ssl.json b/roles/openshift_examples/files/examples/v3.7/xpaas-templates/amq63-persistent-ssl.json index 3eedee933..e0fa53831 100644 --- a/roles/openshift_examples/files/examples/v3.7/xpaas-templates/amq63-persistent-ssl.json +++ b/roles/openshift_examples/files/examples/v3.7/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.7/xpaas-templates/amq63-persistent.json b/roles/openshift_examples/files/examples/v3.7/xpaas-templates/amq63-persistent.json index 7c0aec61a..a87876ca5 100644 --- a/roles/openshift_examples/files/examples/v3.7/xpaas-templates/amq63-persistent.json +++ b/roles/openshift_examples/files/examples/v3.7/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.7/xpaas-templates/amq63-ssl.json b/roles/openshift_examples/files/examples/v3.7/xpaas-templates/amq63-ssl.json index a55403c79..f4c43da0e 100644 --- a/roles/openshift_examples/files/examples/v3.7/xpaas-templates/amq63-ssl.json +++ b/roles/openshift_examples/files/examples/v3.7/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.7/xpaas-templates/datagrid65-basic.json b/roles/openshift_examples/files/examples/v3.7/xpaas-templates/datagrid65-basic.json index af390c13d..055287371 100644 --- a/roles/openshift_examples/files/examples/v3.7/xpaas-templates/datagrid65-basic.json +++ b/roles/openshift_examples/files/examples/v3.7/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.7/xpaas-templates/datagrid65-https.json b/roles/openshift_examples/files/examples/v3.7/xpaas-templates/datagrid65-https.json index 97d02c788..66636d7d7 100644 --- a/roles/openshift_examples/files/examples/v3.7/xpaas-templates/datagrid65-https.json +++ b/roles/openshift_examples/files/examples/v3.7/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.7/xpaas-templates/datagrid65-mysql-persistent.json b/roles/openshift_examples/files/examples/v3.7/xpaas-templates/datagrid65-mysql-persistent.json index 018132668..51bb4f047 100644 --- a/roles/openshift_examples/files/examples/v3.7/xpaas-templates/datagrid65-mysql-persistent.json +++ b/roles/openshift_examples/files/examples/v3.7/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.7/xpaas-templates/datagrid65-mysql.json b/roles/openshift_examples/files/examples/v3.7/xpaas-templates/datagrid65-mysql.json index 1e8ca1b51..b7914b6ab 100644 --- a/roles/openshift_examples/files/examples/v3.7/xpaas-templates/datagrid65-mysql.json +++ b/roles/openshift_examples/files/examples/v3.7/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.7/xpaas-templates/datagrid65-postgresql-persistent.json b/roles/openshift_examples/files/examples/v3.7/xpaas-templates/datagrid65-postgresql-persistent.json index 4a1d818c9..f77590173 100644 --- a/roles/openshift_examples/files/examples/v3.7/xpaas-templates/datagrid65-postgresql-persistent.json +++ b/roles/openshift_examples/files/examples/v3.7/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.7/xpaas-templates/datagrid65-postgresql.json b/roles/openshift_examples/files/examples/v3.7/xpaas-templates/datagrid65-postgresql.json index d97bdfa75..991bec03a 100644 --- a/roles/openshift_examples/files/examples/v3.7/xpaas-templates/datagrid65-postgresql.json +++ b/roles/openshift_examples/files/examples/v3.7/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.7/xpaas-templates/datagrid71-basic.json b/roles/openshift_examples/files/examples/v3.7/xpaas-templates/datagrid71-basic.json index d4b83da34..66e900045 100644 --- a/roles/openshift_examples/files/examples/v3.7/xpaas-templates/datagrid71-basic.json +++ b/roles/openshift_examples/files/examples/v3.7/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.7/xpaas-templates/datagrid71-https.json b/roles/openshift_examples/files/examples/v3.7/xpaas-templates/datagrid71-https.json index 2a46bd3a2..6d092cbc9 100644 --- a/roles/openshift_examples/files/examples/v3.7/xpaas-templates/datagrid71-https.json +++ b/roles/openshift_examples/files/examples/v3.7/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.7/xpaas-templates/datagrid71-mysql-persistent.json b/roles/openshift_examples/files/examples/v3.7/xpaas-templates/datagrid71-mysql-persistent.json index 72bdf2037..96f7b4b1f 100644 --- a/roles/openshift_examples/files/examples/v3.7/xpaas-templates/datagrid71-mysql-persistent.json +++ b/roles/openshift_examples/files/examples/v3.7/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.7/xpaas-templates/datagrid71-mysql.json b/roles/openshift_examples/files/examples/v3.7/xpaas-templates/datagrid71-mysql.json index 99f97a7c7..690fe1575 100644 --- a/roles/openshift_examples/files/examples/v3.7/xpaas-templates/datagrid71-mysql.json +++ b/roles/openshift_examples/files/examples/v3.7/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.7/xpaas-templates/datagrid71-partition.json b/roles/openshift_examples/files/examples/v3.7/xpaas-templates/datagrid71-partition.json index baf17dbbb..06e9f13e7 100644 --- a/roles/openshift_examples/files/examples/v3.7/xpaas-templates/datagrid71-partition.json +++ b/roles/openshift_examples/files/examples/v3.7/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.7/xpaas-templates/datagrid71-postgresql-persistent.json b/roles/openshift_examples/files/examples/v3.7/xpaas-templates/datagrid71-postgresql-persistent.json index 5cd6e854a..49f2a1c25 100644 --- a/roles/openshift_examples/files/examples/v3.7/xpaas-templates/datagrid71-postgresql-persistent.json +++ b/roles/openshift_examples/files/examples/v3.7/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.7/xpaas-templates/datagrid71-postgresql.json b/roles/openshift_examples/files/examples/v3.7/xpaas-templates/datagrid71-postgresql.json index 505d67750..f9839389a 100644 --- a/roles/openshift_examples/files/examples/v3.7/xpaas-templates/datagrid71-postgresql.json +++ b/roles/openshift_examples/files/examples/v3.7/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.7/xpaas-templates/datavirt63-basic-s2i.json b/roles/openshift_examples/files/examples/v3.7/xpaas-templates/datavirt63-basic-s2i.json index b6885d6f6..275500830 100644 --- a/roles/openshift_examples/files/examples/v3.7/xpaas-templates/datavirt63-basic-s2i.json +++ b/roles/openshift_examples/files/examples/v3.7/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.7/xpaas-templates/datavirt63-extensions-support-s2i.json b/roles/openshift_examples/files/examples/v3.7/xpaas-templates/datavirt63-extensions-support-s2i.json index a06f714a7..f5f4532b6 100644 --- a/roles/openshift_examples/files/examples/v3.7/xpaas-templates/datavirt63-extensions-support-s2i.json +++ b/roles/openshift_examples/files/examples/v3.7/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.7/xpaas-templates/datavirt63-secure-s2i.json b/roles/openshift_examples/files/examples/v3.7/xpaas-templates/datavirt63-secure-s2i.json index 1758b1be0..202a57a1e 100644 --- a/roles/openshift_examples/files/examples/v3.7/xpaas-templates/datavirt63-secure-s2i.json +++ b/roles/openshift_examples/files/examples/v3.7/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.7/xpaas-templates/decisionserver64-amq-s2i.json b/roles/openshift_examples/files/examples/v3.7/xpaas-templates/decisionserver64-amq-s2i.json index 3006a7265..231c597f9 100644 --- a/roles/openshift_examples/files/examples/v3.7/xpaas-templates/decisionserver64-amq-s2i.json +++ b/roles/openshift_examples/files/examples/v3.7/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.7/xpaas-templates/decisionserver64-basic-s2i.json b/roles/openshift_examples/files/examples/v3.7/xpaas-templates/decisionserver64-basic-s2i.json index eaee9c1a5..6ed3c8a83 100644 --- a/roles/openshift_examples/files/examples/v3.7/xpaas-templates/decisionserver64-basic-s2i.json +++ b/roles/openshift_examples/files/examples/v3.7/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.7/xpaas-templates/decisionserver64-https-s2i.json b/roles/openshift_examples/files/examples/v3.7/xpaas-templates/decisionserver64-https-s2i.json index cb6eb1706..a57a30862 100644 --- a/roles/openshift_examples/files/examples/v3.7/xpaas-templates/decisionserver64-https-s2i.json +++ b/roles/openshift_examples/files/examples/v3.7/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.7/xpaas-templates/eap64-amq-persistent-s2i.json b/roles/openshift_examples/files/examples/v3.7/xpaas-templates/eap64-amq-persistent-s2i.json index 9ebbfd06c..de62b246e 100644 --- a/roles/openshift_examples/files/examples/v3.7/xpaas-templates/eap64-amq-persistent-s2i.json +++ b/roles/openshift_examples/files/examples/v3.7/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.7/xpaas-templates/eap64-amq-s2i.json b/roles/openshift_examples/files/examples/v3.7/xpaas-templates/eap64-amq-s2i.json index 6b0e1a30c..52824aa0f 100644 --- a/roles/openshift_examples/files/examples/v3.7/xpaas-templates/eap64-amq-s2i.json +++ b/roles/openshift_examples/files/examples/v3.7/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.7/xpaas-templates/eap64-basic-s2i.json b/roles/openshift_examples/files/examples/v3.7/xpaas-templates/eap64-basic-s2i.json index 17fdd2333..ced21226f 100644 --- a/roles/openshift_examples/files/examples/v3.7/xpaas-templates/eap64-basic-s2i.json +++ b/roles/openshift_examples/files/examples/v3.7/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.7/xpaas-templates/eap64-https-s2i.json b/roles/openshift_examples/files/examples/v3.7/xpaas-templates/eap64-https-s2i.json index 8616ac04f..1702f493c 100644 --- a/roles/openshift_examples/files/examples/v3.7/xpaas-templates/eap64-https-s2i.json +++ b/roles/openshift_examples/files/examples/v3.7/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.7/xpaas-templates/eap64-mongodb-persistent-s2i.json b/roles/openshift_examples/files/examples/v3.7/xpaas-templates/eap64-mongodb-persistent-s2i.json index ea3b46d78..a56fe4ed2 100644 --- a/roles/openshift_examples/files/examples/v3.7/xpaas-templates/eap64-mongodb-persistent-s2i.json +++ b/roles/openshift_examples/files/examples/v3.7/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.7/xpaas-templates/eap64-mongodb-s2i.json b/roles/openshift_examples/files/examples/v3.7/xpaas-templates/eap64-mongodb-s2i.json index 4aa9be281..cb92bac64 100644 --- a/roles/openshift_examples/files/examples/v3.7/xpaas-templates/eap64-mongodb-s2i.json +++ b/roles/openshift_examples/files/examples/v3.7/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.7/xpaas-templates/eap64-mysql-persistent-s2i.json b/roles/openshift_examples/files/examples/v3.7/xpaas-templates/eap64-mysql-persistent-s2i.json index 304f11348..a6dd17d09 100644 --- a/roles/openshift_examples/files/examples/v3.7/xpaas-templates/eap64-mysql-persistent-s2i.json +++ b/roles/openshift_examples/files/examples/v3.7/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.7/xpaas-templates/eap64-mysql-s2i.json b/roles/openshift_examples/files/examples/v3.7/xpaas-templates/eap64-mysql-s2i.json index bc1cdaca5..936f5d607 100644 --- a/roles/openshift_examples/files/examples/v3.7/xpaas-templates/eap64-mysql-s2i.json +++ b/roles/openshift_examples/files/examples/v3.7/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.7/xpaas-templates/eap64-postgresql-persistent-s2i.json b/roles/openshift_examples/files/examples/v3.7/xpaas-templates/eap64-postgresql-persistent-s2i.json index d2e6ea25b..53e9a38c8 100644 --- a/roles/openshift_examples/files/examples/v3.7/xpaas-templates/eap64-postgresql-persistent-s2i.json +++ b/roles/openshift_examples/files/examples/v3.7/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.7/xpaas-templates/eap64-postgresql-s2i.json b/roles/openshift_examples/files/examples/v3.7/xpaas-templates/eap64-postgresql-s2i.json index 7a2d4009e..a13e68daf 100644 --- a/roles/openshift_examples/files/examples/v3.7/xpaas-templates/eap64-postgresql-s2i.json +++ b/roles/openshift_examples/files/examples/v3.7/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.7/xpaas-templates/eap64-sso-s2i.json b/roles/openshift_examples/files/examples/v3.7/xpaas-templates/eap64-sso-s2i.json index 368f147f4..2c5e16f40 100644 --- a/roles/openshift_examples/files/examples/v3.7/xpaas-templates/eap64-sso-s2i.json +++ b/roles/openshift_examples/files/examples/v3.7/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.7/xpaas-templates/eap64-third-party-db-s2i.json b/roles/openshift_examples/files/examples/v3.7/xpaas-templates/eap64-third-party-db-s2i.json index 701f4eee6..75c2c466c 100644 --- a/roles/openshift_examples/files/examples/v3.7/xpaas-templates/eap64-third-party-db-s2i.json +++ b/roles/openshift_examples/files/examples/v3.7/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.7/xpaas-templates/eap64-tx-recovery-s2i.json b/roles/openshift_examples/files/examples/v3.7/xpaas-templates/eap64-tx-recovery-s2i.json new file mode 100644 index 000000000..de5ebe326 --- /dev/null +++ b/roles/openshift_examples/files/examples/v3.7/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.7/xpaas-templates/eap70-amq-persistent-s2i.json b/roles/openshift_examples/files/examples/v3.7/xpaas-templates/eap70-amq-persistent-s2i.json index d16756bad..eb6929a2c 100644 --- a/roles/openshift_examples/files/examples/v3.7/xpaas-templates/eap70-amq-persistent-s2i.json +++ b/roles/openshift_examples/files/examples/v3.7/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.7/xpaas-templates/eap70-amq-s2i.json b/roles/openshift_examples/files/examples/v3.7/xpaas-templates/eap70-amq-s2i.json index 70323214f..ca0efa2d9 100644 --- a/roles/openshift_examples/files/examples/v3.7/xpaas-templates/eap70-amq-s2i.json +++ b/roles/openshift_examples/files/examples/v3.7/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.7/xpaas-templates/eap70-basic-s2i.json b/roles/openshift_examples/files/examples/v3.7/xpaas-templates/eap70-basic-s2i.json index 312db1971..a0d781a4d 100644 --- a/roles/openshift_examples/files/examples/v3.7/xpaas-templates/eap70-basic-s2i.json +++ b/roles/openshift_examples/files/examples/v3.7/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.7/xpaas-templates/eap70-https-s2i.json b/roles/openshift_examples/files/examples/v3.7/xpaas-templates/eap70-https-s2i.json index 7c3b35f5a..0b7d09001 100644 --- a/roles/openshift_examples/files/examples/v3.7/xpaas-templates/eap70-https-s2i.json +++ b/roles/openshift_examples/files/examples/v3.7/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.7/xpaas-templates/eap70-mongodb-persistent-s2i.json b/roles/openshift_examples/files/examples/v3.7/xpaas-templates/eap70-mongodb-persistent-s2i.json index 205e451c7..d6a154a38 100644 --- a/roles/openshift_examples/files/examples/v3.7/xpaas-templates/eap70-mongodb-persistent-s2i.json +++ b/roles/openshift_examples/files/examples/v3.7/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.7/xpaas-templates/eap70-mongodb-s2i.json b/roles/openshift_examples/files/examples/v3.7/xpaas-templates/eap70-mongodb-s2i.json index 63b57d5dc..31a2e161f 100644 --- a/roles/openshift_examples/files/examples/v3.7/xpaas-templates/eap70-mongodb-s2i.json +++ b/roles/openshift_examples/files/examples/v3.7/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.7/xpaas-templates/eap70-mysql-persistent-s2i.json b/roles/openshift_examples/files/examples/v3.7/xpaas-templates/eap70-mysql-persistent-s2i.json index f9f77f22c..d487cfc40 100644 --- a/roles/openshift_examples/files/examples/v3.7/xpaas-templates/eap70-mysql-persistent-s2i.json +++ b/roles/openshift_examples/files/examples/v3.7/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.7/xpaas-templates/eap70-mysql-s2i.json b/roles/openshift_examples/files/examples/v3.7/xpaas-templates/eap70-mysql-s2i.json index 8ea433a80..ee4e8f01d 100644 --- a/roles/openshift_examples/files/examples/v3.7/xpaas-templates/eap70-mysql-s2i.json +++ b/roles/openshift_examples/files/examples/v3.7/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.7/xpaas-templates/eap70-postgresql-persistent-s2i.json b/roles/openshift_examples/files/examples/v3.7/xpaas-templates/eap70-postgresql-persistent-s2i.json index a2bc9d3b9..aba0c8c64 100644 --- a/roles/openshift_examples/files/examples/v3.7/xpaas-templates/eap70-postgresql-persistent-s2i.json +++ b/roles/openshift_examples/files/examples/v3.7/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.7/xpaas-templates/eap70-postgresql-s2i.json b/roles/openshift_examples/files/examples/v3.7/xpaas-templates/eap70-postgresql-s2i.json index 66b0c737d..bf7c6cf89 100644 --- a/roles/openshift_examples/files/examples/v3.7/xpaas-templates/eap70-postgresql-s2i.json +++ b/roles/openshift_examples/files/examples/v3.7/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.7/xpaas-templates/eap70-sso-s2i.json b/roles/openshift_examples/files/examples/v3.7/xpaas-templates/eap70-sso-s2i.json index 2201ff7f3..3601e2354 100644 --- a/roles/openshift_examples/files/examples/v3.7/xpaas-templates/eap70-sso-s2i.json +++ b/roles/openshift_examples/files/examples/v3.7/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.7/xpaas-templates/eap70-third-party-db-s2i.json b/roles/openshift_examples/files/examples/v3.7/xpaas-templates/eap70-third-party-db-s2i.json index 3ca69f6c7..08b2717be 100644 --- a/roles/openshift_examples/files/examples/v3.7/xpaas-templates/eap70-third-party-db-s2i.json +++ b/roles/openshift_examples/files/examples/v3.7/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.7/xpaas-templates/eap70-tx-recovery-s2i.json b/roles/openshift_examples/files/examples/v3.7/xpaas-templates/eap70-tx-recovery-s2i.json new file mode 100644 index 000000000..4edfb1336 --- /dev/null +++ b/roles/openshift_examples/files/examples/v3.7/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.7/xpaas-templates/eap71-amq-persistent-s2i.json b/roles/openshift_examples/files/examples/v3.7/xpaas-templates/eap71-amq-persistent-s2i.json index dbc1a8013..d5e785f69 100644 --- a/roles/openshift_examples/files/examples/v3.7/xpaas-templates/eap71-amq-persistent-s2i.json +++ b/roles/openshift_examples/files/examples/v3.7/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.7/xpaas-templates/eap71-amq-s2i.json b/roles/openshift_examples/files/examples/v3.7/xpaas-templates/eap71-amq-s2i.json index 6e330eae9..16d19d540 100644 --- a/roles/openshift_examples/files/examples/v3.7/xpaas-templates/eap71-amq-s2i.json +++ b/roles/openshift_examples/files/examples/v3.7/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.7/xpaas-templates/eap71-basic-s2i.json b/roles/openshift_examples/files/examples/v3.7/xpaas-templates/eap71-basic-s2i.json index 892ec468c..ece7c7310 100644 --- a/roles/openshift_examples/files/examples/v3.7/xpaas-templates/eap71-basic-s2i.json +++ b/roles/openshift_examples/files/examples/v3.7/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.7/xpaas-templates/eap71-https-s2i.json b/roles/openshift_examples/files/examples/v3.7/xpaas-templates/eap71-https-s2i.json index 7426830ec..515e69e83 100644 --- a/roles/openshift_examples/files/examples/v3.7/xpaas-templates/eap71-https-s2i.json +++ b/roles/openshift_examples/files/examples/v3.7/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.7/xpaas-templates/eap71-mongodb-persistent-s2i.json b/roles/openshift_examples/files/examples/v3.7/xpaas-templates/eap71-mongodb-persistent-s2i.json index fb7f27acf..97ed818d3 100644 --- a/roles/openshift_examples/files/examples/v3.7/xpaas-templates/eap71-mongodb-persistent-s2i.json +++ b/roles/openshift_examples/files/examples/v3.7/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.7/xpaas-templates/eap71-mongodb-s2i.json b/roles/openshift_examples/files/examples/v3.7/xpaas-templates/eap71-mongodb-s2i.json index 915c9ba0a..b59ca2b5e 100644 --- a/roles/openshift_examples/files/examples/v3.7/xpaas-templates/eap71-mongodb-s2i.json +++ b/roles/openshift_examples/files/examples/v3.7/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.7/xpaas-templates/eap71-mysql-persistent-s2i.json b/roles/openshift_examples/files/examples/v3.7/xpaas-templates/eap71-mysql-persistent-s2i.json index 6af9e5f50..aee9966a5 100644 --- a/roles/openshift_examples/files/examples/v3.7/xpaas-templates/eap71-mysql-persistent-s2i.json +++ b/roles/openshift_examples/files/examples/v3.7/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.7/xpaas-templates/eap71-mysql-s2i.json b/roles/openshift_examples/files/examples/v3.7/xpaas-templates/eap71-mysql-s2i.json index c7d14d3c7..d1062329e 100644 --- a/roles/openshift_examples/files/examples/v3.7/xpaas-templates/eap71-mysql-s2i.json +++ b/roles/openshift_examples/files/examples/v3.7/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.7/xpaas-templates/eap71-postgresql-persistent-s2i.json b/roles/openshift_examples/files/examples/v3.7/xpaas-templates/eap71-postgresql-persistent-s2i.json index a8d77b0ab..e4c306478 100644 --- a/roles/openshift_examples/files/examples/v3.7/xpaas-templates/eap71-postgresql-persistent-s2i.json +++ b/roles/openshift_examples/files/examples/v3.7/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.7/xpaas-templates/eap71-postgresql-s2i.json b/roles/openshift_examples/files/examples/v3.7/xpaas-templates/eap71-postgresql-s2i.json index d87f05ea8..ef5402199 100644 --- a/roles/openshift_examples/files/examples/v3.7/xpaas-templates/eap71-postgresql-s2i.json +++ b/roles/openshift_examples/files/examples/v3.7/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.7/xpaas-templates/eap71-sso-s2i.json b/roles/openshift_examples/files/examples/v3.7/xpaas-templates/eap71-sso-s2i.json index 96b3dffc9..3e5c346bf 100644 --- a/roles/openshift_examples/files/examples/v3.7/xpaas-templates/eap71-sso-s2i.json +++ b/roles/openshift_examples/files/examples/v3.7/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.7/xpaas-templates/eap71-third-party-db-s2i.json b/roles/openshift_examples/files/examples/v3.7/xpaas-templates/eap71-third-party-db-s2i.json index a2a7264fb..41644db89 100644 --- a/roles/openshift_examples/files/examples/v3.7/xpaas-templates/eap71-third-party-db-s2i.json +++ b/roles/openshift_examples/files/examples/v3.7/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.7/xpaas-templates/eap71-tx-recovery-s2i.json b/roles/openshift_examples/files/examples/v3.7/xpaas-templates/eap71-tx-recovery-s2i.json new file mode 100644 index 000000000..e2525c7e7 --- /dev/null +++ b/roles/openshift_examples/files/examples/v3.7/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.7/xpaas-templates/jws31-tomcat7-basic-s2i.json b/roles/openshift_examples/files/examples/v3.7/xpaas-templates/jws31-tomcat7-basic-s2i.json index 42e352538..146cbeb0e 100644 --- a/roles/openshift_examples/files/examples/v3.7/xpaas-templates/jws31-tomcat7-basic-s2i.json +++ b/roles/openshift_examples/files/examples/v3.7/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.7/xpaas-templates/jws31-tomcat7-https-s2i.json b/roles/openshift_examples/files/examples/v3.7/xpaas-templates/jws31-tomcat7-https-s2i.json index b0a81d9c3..8de78d6b6 100644 --- a/roles/openshift_examples/files/examples/v3.7/xpaas-templates/jws31-tomcat7-https-s2i.json +++ b/roles/openshift_examples/files/examples/v3.7/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.7/xpaas-templates/jws31-tomcat7-mongodb-persistent-s2i.json b/roles/openshift_examples/files/examples/v3.7/xpaas-templates/jws31-tomcat7-mongodb-persistent-s2i.json index 565f97822..97b0df4c3 100644 --- a/roles/openshift_examples/files/examples/v3.7/xpaas-templates/jws31-tomcat7-mongodb-persistent-s2i.json +++ b/roles/openshift_examples/files/examples/v3.7/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.7/xpaas-templates/jws31-tomcat7-mongodb-s2i.json b/roles/openshift_examples/files/examples/v3.7/xpaas-templates/jws31-tomcat7-mongodb-s2i.json index fc473f5c3..28155b34b 100644 --- a/roles/openshift_examples/files/examples/v3.7/xpaas-templates/jws31-tomcat7-mongodb-s2i.json +++ b/roles/openshift_examples/files/examples/v3.7/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.7/xpaas-templates/jws31-tomcat7-mysql-persistent-s2i.json b/roles/openshift_examples/files/examples/v3.7/xpaas-templates/jws31-tomcat7-mysql-persistent-s2i.json index 1223acd0f..0a87c85a9 100644 --- a/roles/openshift_examples/files/examples/v3.7/xpaas-templates/jws31-tomcat7-mysql-persistent-s2i.json +++ b/roles/openshift_examples/files/examples/v3.7/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.7/xpaas-templates/jws31-tomcat7-mysql-s2i.json b/roles/openshift_examples/files/examples/v3.7/xpaas-templates/jws31-tomcat7-mysql-s2i.json index 39becd41e..b77f0cc22 100644 --- a/roles/openshift_examples/files/examples/v3.7/xpaas-templates/jws31-tomcat7-mysql-s2i.json +++ b/roles/openshift_examples/files/examples/v3.7/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.7/xpaas-templates/jws31-tomcat7-postgresql-persistent-s2i.json b/roles/openshift_examples/files/examples/v3.7/xpaas-templates/jws31-tomcat7-postgresql-persistent-s2i.json index 77f4f8c9f..4fabc2cb4 100644 --- a/roles/openshift_examples/files/examples/v3.7/xpaas-templates/jws31-tomcat7-postgresql-persistent-s2i.json +++ b/roles/openshift_examples/files/examples/v3.7/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.7/xpaas-templates/jws31-tomcat7-postgresql-s2i.json b/roles/openshift_examples/files/examples/v3.7/xpaas-templates/jws31-tomcat7-postgresql-s2i.json index 6d1d7aef7..64eaff560 100644 --- a/roles/openshift_examples/files/examples/v3.7/xpaas-templates/jws31-tomcat7-postgresql-s2i.json +++ b/roles/openshift_examples/files/examples/v3.7/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.7/xpaas-templates/jws31-tomcat8-basic-s2i.json b/roles/openshift_examples/files/examples/v3.7/xpaas-templates/jws31-tomcat8-basic-s2i.json index 9e7dc3488..5cc2a565f 100644 --- a/roles/openshift_examples/files/examples/v3.7/xpaas-templates/jws31-tomcat8-basic-s2i.json +++ b/roles/openshift_examples/files/examples/v3.7/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.7/xpaas-templates/jws31-tomcat8-https-s2i.json b/roles/openshift_examples/files/examples/v3.7/xpaas-templates/jws31-tomcat8-https-s2i.json index 8fd5d9fab..9d197649b 100644 --- a/roles/openshift_examples/files/examples/v3.7/xpaas-templates/jws31-tomcat8-https-s2i.json +++ b/roles/openshift_examples/files/examples/v3.7/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.7/xpaas-templates/jws31-tomcat8-mongodb-persistent-s2i.json b/roles/openshift_examples/files/examples/v3.7/xpaas-templates/jws31-tomcat8-mongodb-persistent-s2i.json index f4b11ccfa..51bd9e7cc 100644 --- a/roles/openshift_examples/files/examples/v3.7/xpaas-templates/jws31-tomcat8-mongodb-persistent-s2i.json +++ b/roles/openshift_examples/files/examples/v3.7/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.7/xpaas-templates/jws31-tomcat8-mongodb-s2i.json b/roles/openshift_examples/files/examples/v3.7/xpaas-templates/jws31-tomcat8-mongodb-s2i.json index e2f69f157..9f2beef31 100644 --- a/roles/openshift_examples/files/examples/v3.7/xpaas-templates/jws31-tomcat8-mongodb-s2i.json +++ b/roles/openshift_examples/files/examples/v3.7/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.7/xpaas-templates/jws31-tomcat8-mysql-persistent-s2i.json b/roles/openshift_examples/files/examples/v3.7/xpaas-templates/jws31-tomcat8-mysql-persistent-s2i.json index 579071cb1..5213cc261 100644 --- a/roles/openshift_examples/files/examples/v3.7/xpaas-templates/jws31-tomcat8-mysql-persistent-s2i.json +++ b/roles/openshift_examples/files/examples/v3.7/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.7/xpaas-templates/jws31-tomcat8-mysql-s2i.json b/roles/openshift_examples/files/examples/v3.7/xpaas-templates/jws31-tomcat8-mysql-s2i.json index e84d61608..1ccd4fa37 100644 --- a/roles/openshift_examples/files/examples/v3.7/xpaas-templates/jws31-tomcat8-mysql-s2i.json +++ b/roles/openshift_examples/files/examples/v3.7/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.7/xpaas-templates/jws31-tomcat8-postgresql-persistent-s2i.json b/roles/openshift_examples/files/examples/v3.7/xpaas-templates/jws31-tomcat8-postgresql-persistent-s2i.json index 83a6ca19b..86d8c0fa8 100644 --- a/roles/openshift_examples/files/examples/v3.7/xpaas-templates/jws31-tomcat8-postgresql-persistent-s2i.json +++ b/roles/openshift_examples/files/examples/v3.7/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.7/xpaas-templates/jws31-tomcat8-postgresql-s2i.json b/roles/openshift_examples/files/examples/v3.7/xpaas-templates/jws31-tomcat8-postgresql-s2i.json index e28cf8a04..b77234318 100644 --- a/roles/openshift_examples/files/examples/v3.7/xpaas-templates/jws31-tomcat8-postgresql-s2i.json +++ b/roles/openshift_examples/files/examples/v3.7/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.7/xpaas-templates/karaf2-camel-amq-template.json b/roles/openshift_examples/files/examples/v3.7/xpaas-templates/karaf2-camel-amq-template.json index aad649f84..3415bba4a 100644 --- a/roles/openshift_examples/files/examples/v3.7/xpaas-templates/karaf2-camel-amq-template.json +++ b/roles/openshift_examples/files/examples/v3.7/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.7/xpaas-templates/karaf2-camel-log-template.json b/roles/openshift_examples/files/examples/v3.7/xpaas-templates/karaf2-camel-log-template.json index 38b7bc249..188ae1734 100644 --- a/roles/openshift_examples/files/examples/v3.7/xpaas-templates/karaf2-camel-log-template.json +++ b/roles/openshift_examples/files/examples/v3.7/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.7/xpaas-templates/karaf2-camel-rest-sql-template.json b/roles/openshift_examples/files/examples/v3.7/xpaas-templates/karaf2-camel-rest-sql-template.json index 6d9573e5b..0ed72f39c 100644 --- a/roles/openshift_examples/files/examples/v3.7/xpaas-templates/karaf2-camel-rest-sql-template.json +++ b/roles/openshift_examples/files/examples/v3.7/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.7/xpaas-templates/karaf2-cxf-rest-template.json b/roles/openshift_examples/files/examples/v3.7/xpaas-templates/karaf2-cxf-rest-template.json index fdc0c00e5..3a34eebae 100644 --- a/roles/openshift_examples/files/examples/v3.7/xpaas-templates/karaf2-cxf-rest-template.json +++ b/roles/openshift_examples/files/examples/v3.7/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.7/xpaas-templates/openjdk18-web-basic-s2i.json b/roles/openshift_examples/files/examples/v3.7/xpaas-templates/openjdk18-web-basic-s2i.json index 6336f0398..466dfb984 100644 --- a/roles/openshift_examples/files/examples/v3.7/xpaas-templates/openjdk18-web-basic-s2i.json +++ b/roles/openshift_examples/files/examples/v3.7/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.7/xpaas-templates/processserver64-amq-mysql-persistent-s2i.json b/roles/openshift_examples/files/examples/v3.7/xpaas-templates/processserver64-amq-mysql-persistent-s2i.json index 9ef04ae71..ec1619137 100644 --- a/roles/openshift_examples/files/examples/v3.7/xpaas-templates/processserver64-amq-mysql-persistent-s2i.json +++ b/roles/openshift_examples/files/examples/v3.7/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.7/xpaas-templates/processserver64-amq-mysql-s2i.json b/roles/openshift_examples/files/examples/v3.7/xpaas-templates/processserver64-amq-mysql-s2i.json index 4cb45db42..0deb96c82 100644 --- a/roles/openshift_examples/files/examples/v3.7/xpaas-templates/processserver64-amq-mysql-s2i.json +++ b/roles/openshift_examples/files/examples/v3.7/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.7/xpaas-templates/processserver64-amq-postgresql-persistent-s2i.json b/roles/openshift_examples/files/examples/v3.7/xpaas-templates/processserver64-amq-postgresql-persistent-s2i.json index 56fefcc0a..92767f3b5 100644 --- a/roles/openshift_examples/files/examples/v3.7/xpaas-templates/processserver64-amq-postgresql-persistent-s2i.json +++ b/roles/openshift_examples/files/examples/v3.7/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.7/xpaas-templates/processserver64-amq-postgresql-s2i.json b/roles/openshift_examples/files/examples/v3.7/xpaas-templates/processserver64-amq-postgresql-s2i.json index bb8d2df28..add35a349 100644 --- a/roles/openshift_examples/files/examples/v3.7/xpaas-templates/processserver64-amq-postgresql-s2i.json +++ b/roles/openshift_examples/files/examples/v3.7/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.7/xpaas-templates/processserver64-basic-s2i.json b/roles/openshift_examples/files/examples/v3.7/xpaas-templates/processserver64-basic-s2i.json index 1b7cc8cf1..9af4b6cb4 100644 --- a/roles/openshift_examples/files/examples/v3.7/xpaas-templates/processserver64-basic-s2i.json +++ b/roles/openshift_examples/files/examples/v3.7/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.7/xpaas-templates/processserver64-mysql-persistent-s2i.json b/roles/openshift_examples/files/examples/v3.7/xpaas-templates/processserver64-mysql-persistent-s2i.json index 1a4d0887c..97388a2e1 100644 --- a/roles/openshift_examples/files/examples/v3.7/xpaas-templates/processserver64-mysql-persistent-s2i.json +++ b/roles/openshift_examples/files/examples/v3.7/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.7/xpaas-templates/processserver64-mysql-s2i.json b/roles/openshift_examples/files/examples/v3.7/xpaas-templates/processserver64-mysql-s2i.json index 7c491d832..2e7dc3158 100644 --- a/roles/openshift_examples/files/examples/v3.7/xpaas-templates/processserver64-mysql-s2i.json +++ b/roles/openshift_examples/files/examples/v3.7/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.7/xpaas-templates/processserver64-postgresql-persistent-s2i.json b/roles/openshift_examples/files/examples/v3.7/xpaas-templates/processserver64-postgresql-persistent-s2i.json index 8965ea41f..66dc891cb 100644 --- a/roles/openshift_examples/files/examples/v3.7/xpaas-templates/processserver64-postgresql-persistent-s2i.json +++ b/roles/openshift_examples/files/examples/v3.7/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.7/xpaas-templates/processserver64-postgresql-s2i.json b/roles/openshift_examples/files/examples/v3.7/xpaas-templates/processserver64-postgresql-s2i.json index e21f0ce4e..bb9efc2bb 100644 --- a/roles/openshift_examples/files/examples/v3.7/xpaas-templates/processserver64-postgresql-s2i.json +++ b/roles/openshift_examples/files/examples/v3.7/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.7/xpaas-templates/spring-boot-camel-amq-template.json b/roles/openshift_examples/files/examples/v3.7/xpaas-templates/spring-boot-camel-amq-template.json index 2c1a73a29..89f10f955 100644 --- a/roles/openshift_examples/files/examples/v3.7/xpaas-templates/spring-boot-camel-amq-template.json +++ b/roles/openshift_examples/files/examples/v3.7/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.7/xpaas-templates/spring-boot-camel-config-template.json b/roles/openshift_examples/files/examples/v3.7/xpaas-templates/spring-boot-camel-config-template.json index b62e768b6..6b298b994 100644 --- a/roles/openshift_examples/files/examples/v3.7/xpaas-templates/spring-boot-camel-config-template.json +++ b/roles/openshift_examples/files/examples/v3.7/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.7/xpaas-templates/spring-boot-camel-drools-template.json b/roles/openshift_examples/files/examples/v3.7/xpaas-templates/spring-boot-camel-drools-template.json index 91081e493..e646ccdb4 100644 --- a/roles/openshift_examples/files/examples/v3.7/xpaas-templates/spring-boot-camel-drools-template.json +++ b/roles/openshift_examples/files/examples/v3.7/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.7/xpaas-templates/spring-boot-camel-infinispan-template.json b/roles/openshift_examples/files/examples/v3.7/xpaas-templates/spring-boot-camel-infinispan-template.json index 8d97400ab..1d4910b9a 100644 --- a/roles/openshift_examples/files/examples/v3.7/xpaas-templates/spring-boot-camel-infinispan-template.json +++ b/roles/openshift_examples/files/examples/v3.7/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.7/xpaas-templates/spring-boot-camel-rest-sql-template.json b/roles/openshift_examples/files/examples/v3.7/xpaas-templates/spring-boot-camel-rest-sql-template.json index bf722844c..61f6cb983 100644 --- a/roles/openshift_examples/files/examples/v3.7/xpaas-templates/spring-boot-camel-rest-sql-template.json +++ b/roles/openshift_examples/files/examples/v3.7/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.7/xpaas-templates/spring-boot-camel-teiid-template.json b/roles/openshift_examples/files/examples/v3.7/xpaas-templates/spring-boot-camel-teiid-template.json index 856264615..1f5542069 100644 --- a/roles/openshift_examples/files/examples/v3.7/xpaas-templates/spring-boot-camel-teiid-template.json +++ b/roles/openshift_examples/files/examples/v3.7/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.7/xpaas-templates/spring-boot-camel-template.json b/roles/openshift_examples/files/examples/v3.7/xpaas-templates/spring-boot-camel-template.json index 9c0fe287e..939979912 100644 --- a/roles/openshift_examples/files/examples/v3.7/xpaas-templates/spring-boot-camel-template.json +++ b/roles/openshift_examples/files/examples/v3.7/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.7/xpaas-templates/spring-boot-camel-xml-template.json b/roles/openshift_examples/files/examples/v3.7/xpaas-templates/spring-boot-camel-xml-template.json index 87c0e347a..c5691bc9b 100644 --- a/roles/openshift_examples/files/examples/v3.7/xpaas-templates/spring-boot-camel-xml-template.json +++ b/roles/openshift_examples/files/examples/v3.7/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.7/xpaas-templates/spring-boot-cxf-jaxrs-template.json b/roles/openshift_examples/files/examples/v3.7/xpaas-templates/spring-boot-cxf-jaxrs-template.json index 8b0261035..577eebf58 100644 --- a/roles/openshift_examples/files/examples/v3.7/xpaas-templates/spring-boot-cxf-jaxrs-template.json +++ b/roles/openshift_examples/files/examples/v3.7/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.7/xpaas-templates/spring-boot-cxf-jaxws-template.json b/roles/openshift_examples/files/examples/v3.7/xpaas-templates/spring-boot-cxf-jaxws-template.json index 8b36f5f0b..11441276a 100644 --- a/roles/openshift_examples/files/examples/v3.7/xpaas-templates/spring-boot-cxf-jaxws-template.json +++ b/roles/openshift_examples/files/examples/v3.7/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.7/xpaas-templates/sso71-https.json b/roles/openshift_examples/files/examples/v3.7/xpaas-templates/sso71-https.json index 26dd26624..655ec2eaa 100644 --- a/roles/openshift_examples/files/examples/v3.7/xpaas-templates/sso71-https.json +++ b/roles/openshift_examples/files/examples/v3.7/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.7/xpaas-templates/sso71-mysql-persistent.json b/roles/openshift_examples/files/examples/v3.7/xpaas-templates/sso71-mysql-persistent.json index 7092bb65e..83de1ab37 100644 --- a/roles/openshift_examples/files/examples/v3.7/xpaas-templates/sso71-mysql-persistent.json +++ b/roles/openshift_examples/files/examples/v3.7/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.7/xpaas-templates/sso71-mysql.json b/roles/openshift_examples/files/examples/v3.7/xpaas-templates/sso71-mysql.json index d90f0a0cc..269761dac 100644 --- a/roles/openshift_examples/files/examples/v3.7/xpaas-templates/sso71-mysql.json +++ b/roles/openshift_examples/files/examples/v3.7/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.7/xpaas-templates/sso71-postgresql-persistent.json b/roles/openshift_examples/files/examples/v3.7/xpaas-templates/sso71-postgresql-persistent.json index b1077db91..cd167d983 100644 --- a/roles/openshift_examples/files/examples/v3.7/xpaas-templates/sso71-postgresql-persistent.json +++ b/roles/openshift_examples/files/examples/v3.7/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.7/xpaas-templates/sso71-postgresql.json b/roles/openshift_examples/files/examples/v3.7/xpaas-templates/sso71-postgresql.json index 0955d712a..365383f8a 100644 --- a/roles/openshift_examples/files/examples/v3.7/xpaas-templates/sso71-postgresql.json +++ b/roles/openshift_examples/files/examples/v3.7/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" + } ] } } diff --git a/roles/openshift_examples/files/examples/v3.8/xpaas-streams/jboss-image-streams.json b/roles/openshift_examples/files/examples/v3.8/xpaas-streams/jboss-image-streams.json index ed2dbf572..7281864f8 100644 --- a/roles/openshift_examples/files/examples/v3.8/xpaas-streams/jboss-image-streams.json +++ b/roles/openshift_examples/files/examples/v3.8/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.8/xpaas-templates/amq62-basic.json b/roles/openshift_examples/files/examples/v3.8/xpaas-templates/amq62-basic.json index 8f8e14cb6..134a577b6 100644 --- a/roles/openshift_examples/files/examples/v3.8/xpaas-templates/amq62-basic.json +++ b/roles/openshift_examples/files/examples/v3.8/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.8/xpaas-templates/amq62-persistent-ssl.json b/roles/openshift_examples/files/examples/v3.8/xpaas-templates/amq62-persistent-ssl.json index 96f9d616f..5a034d0ba 100644 --- a/roles/openshift_examples/files/examples/v3.8/xpaas-templates/amq62-persistent-ssl.json +++ b/roles/openshift_examples/files/examples/v3.8/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.8/xpaas-templates/amq62-persistent.json b/roles/openshift_examples/files/examples/v3.8/xpaas-templates/amq62-persistent.json index 67c812fb4..bc62098ee 100644 --- a/roles/openshift_examples/files/examples/v3.8/xpaas-templates/amq62-persistent.json +++ b/roles/openshift_examples/files/examples/v3.8/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.8/xpaas-templates/amq62-ssl.json b/roles/openshift_examples/files/examples/v3.8/xpaas-templates/amq62-ssl.json index 9f488820c..38a291fe9 100644 --- a/roles/openshift_examples/files/examples/v3.8/xpaas-templates/amq62-ssl.json +++ b/roles/openshift_examples/files/examples/v3.8/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.8/xpaas-templates/amq63-basic.json b/roles/openshift_examples/files/examples/v3.8/xpaas-templates/amq63-basic.json index e13530764..b72a5adb2 100644 --- a/roles/openshift_examples/files/examples/v3.8/xpaas-templates/amq63-basic.json +++ b/roles/openshift_examples/files/examples/v3.8/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.8/xpaas-templates/amq63-persistent-ssl.json b/roles/openshift_examples/files/examples/v3.8/xpaas-templates/amq63-persistent-ssl.json index 3eedee933..e0fa53831 100644 --- a/roles/openshift_examples/files/examples/v3.8/xpaas-templates/amq63-persistent-ssl.json +++ b/roles/openshift_examples/files/examples/v3.8/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.8/xpaas-templates/amq63-persistent.json b/roles/openshift_examples/files/examples/v3.8/xpaas-templates/amq63-persistent.json index 7c0aec61a..a87876ca5 100644 --- a/roles/openshift_examples/files/examples/v3.8/xpaas-templates/amq63-persistent.json +++ b/roles/openshift_examples/files/examples/v3.8/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.8/xpaas-templates/amq63-ssl.json b/roles/openshift_examples/files/examples/v3.8/xpaas-templates/amq63-ssl.json index a55403c79..f4c43da0e 100644 --- a/roles/openshift_examples/files/examples/v3.8/xpaas-templates/amq63-ssl.json +++ b/roles/openshift_examples/files/examples/v3.8/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.8/xpaas-templates/datagrid65-basic.json b/roles/openshift_examples/files/examples/v3.8/xpaas-templates/datagrid65-basic.json index af390c13d..055287371 100644 --- a/roles/openshift_examples/files/examples/v3.8/xpaas-templates/datagrid65-basic.json +++ b/roles/openshift_examples/files/examples/v3.8/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.8/xpaas-templates/datagrid65-https.json b/roles/openshift_examples/files/examples/v3.8/xpaas-templates/datagrid65-https.json index 97d02c788..66636d7d7 100644 --- a/roles/openshift_examples/files/examples/v3.8/xpaas-templates/datagrid65-https.json +++ b/roles/openshift_examples/files/examples/v3.8/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.8/xpaas-templates/datagrid65-mysql-persistent.json b/roles/openshift_examples/files/examples/v3.8/xpaas-templates/datagrid65-mysql-persistent.json index 018132668..51bb4f047 100644 --- a/roles/openshift_examples/files/examples/v3.8/xpaas-templates/datagrid65-mysql-persistent.json +++ b/roles/openshift_examples/files/examples/v3.8/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.8/xpaas-templates/datagrid65-mysql.json b/roles/openshift_examples/files/examples/v3.8/xpaas-templates/datagrid65-mysql.json index 1e8ca1b51..b7914b6ab 100644 --- a/roles/openshift_examples/files/examples/v3.8/xpaas-templates/datagrid65-mysql.json +++ b/roles/openshift_examples/files/examples/v3.8/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.8/xpaas-templates/datagrid65-postgresql-persistent.json b/roles/openshift_examples/files/examples/v3.8/xpaas-templates/datagrid65-postgresql-persistent.json index 4a1d818c9..f77590173 100644 --- a/roles/openshift_examples/files/examples/v3.8/xpaas-templates/datagrid65-postgresql-persistent.json +++ b/roles/openshift_examples/files/examples/v3.8/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.8/xpaas-templates/datagrid65-postgresql.json b/roles/openshift_examples/files/examples/v3.8/xpaas-templates/datagrid65-postgresql.json index d97bdfa75..991bec03a 100644 --- a/roles/openshift_examples/files/examples/v3.8/xpaas-templates/datagrid65-postgresql.json +++ b/roles/openshift_examples/files/examples/v3.8/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.8/xpaas-templates/datagrid71-basic.json b/roles/openshift_examples/files/examples/v3.8/xpaas-templates/datagrid71-basic.json index d4b83da34..66e900045 100644 --- a/roles/openshift_examples/files/examples/v3.8/xpaas-templates/datagrid71-basic.json +++ b/roles/openshift_examples/files/examples/v3.8/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.8/xpaas-templates/datagrid71-https.json b/roles/openshift_examples/files/examples/v3.8/xpaas-templates/datagrid71-https.json index 2a46bd3a2..6d092cbc9 100644 --- a/roles/openshift_examples/files/examples/v3.8/xpaas-templates/datagrid71-https.json +++ b/roles/openshift_examples/files/examples/v3.8/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.8/xpaas-templates/datagrid71-mysql-persistent.json b/roles/openshift_examples/files/examples/v3.8/xpaas-templates/datagrid71-mysql-persistent.json index 72bdf2037..96f7b4b1f 100644 --- a/roles/openshift_examples/files/examples/v3.8/xpaas-templates/datagrid71-mysql-persistent.json +++ b/roles/openshift_examples/files/examples/v3.8/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.8/xpaas-templates/datagrid71-mysql.json b/roles/openshift_examples/files/examples/v3.8/xpaas-templates/datagrid71-mysql.json index 99f97a7c7..690fe1575 100644 --- a/roles/openshift_examples/files/examples/v3.8/xpaas-templates/datagrid71-mysql.json +++ b/roles/openshift_examples/files/examples/v3.8/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.8/xpaas-templates/datagrid71-partition.json b/roles/openshift_examples/files/examples/v3.8/xpaas-templates/datagrid71-partition.json index baf17dbbb..06e9f13e7 100644 --- a/roles/openshift_examples/files/examples/v3.8/xpaas-templates/datagrid71-partition.json +++ b/roles/openshift_examples/files/examples/v3.8/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.8/xpaas-templates/datagrid71-postgresql-persistent.json b/roles/openshift_examples/files/examples/v3.8/xpaas-templates/datagrid71-postgresql-persistent.json index 5cd6e854a..49f2a1c25 100644 --- a/roles/openshift_examples/files/examples/v3.8/xpaas-templates/datagrid71-postgresql-persistent.json +++ b/roles/openshift_examples/files/examples/v3.8/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.8/xpaas-templates/datagrid71-postgresql.json b/roles/openshift_examples/files/examples/v3.8/xpaas-templates/datagrid71-postgresql.json index 505d67750..f9839389a 100644 --- a/roles/openshift_examples/files/examples/v3.8/xpaas-templates/datagrid71-postgresql.json +++ b/roles/openshift_examples/files/examples/v3.8/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.8/xpaas-templates/datavirt63-basic-s2i.json b/roles/openshift_examples/files/examples/v3.8/xpaas-templates/datavirt63-basic-s2i.json index b6885d6f6..275500830 100644 --- a/roles/openshift_examples/files/examples/v3.8/xpaas-templates/datavirt63-basic-s2i.json +++ b/roles/openshift_examples/files/examples/v3.8/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.8/xpaas-templates/datavirt63-extensions-support-s2i.json b/roles/openshift_examples/files/examples/v3.8/xpaas-templates/datavirt63-extensions-support-s2i.json index a06f714a7..f5f4532b6 100644 --- a/roles/openshift_examples/files/examples/v3.8/xpaas-templates/datavirt63-extensions-support-s2i.json +++ b/roles/openshift_examples/files/examples/v3.8/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.8/xpaas-templates/datavirt63-secure-s2i.json b/roles/openshift_examples/files/examples/v3.8/xpaas-templates/datavirt63-secure-s2i.json index 1758b1be0..202a57a1e 100644 --- a/roles/openshift_examples/files/examples/v3.8/xpaas-templates/datavirt63-secure-s2i.json +++ b/roles/openshift_examples/files/examples/v3.8/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.8/xpaas-templates/decisionserver64-amq-s2i.json b/roles/openshift_examples/files/examples/v3.8/xpaas-templates/decisionserver64-amq-s2i.json index 3006a7265..231c597f9 100644 --- a/roles/openshift_examples/files/examples/v3.8/xpaas-templates/decisionserver64-amq-s2i.json +++ b/roles/openshift_examples/files/examples/v3.8/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.8/xpaas-templates/decisionserver64-basic-s2i.json b/roles/openshift_examples/files/examples/v3.8/xpaas-templates/decisionserver64-basic-s2i.json index eaee9c1a5..6ed3c8a83 100644 --- a/roles/openshift_examples/files/examples/v3.8/xpaas-templates/decisionserver64-basic-s2i.json +++ b/roles/openshift_examples/files/examples/v3.8/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.8/xpaas-templates/decisionserver64-https-s2i.json b/roles/openshift_examples/files/examples/v3.8/xpaas-templates/decisionserver64-https-s2i.json index cb6eb1706..a57a30862 100644 --- a/roles/openshift_examples/files/examples/v3.8/xpaas-templates/decisionserver64-https-s2i.json +++ b/roles/openshift_examples/files/examples/v3.8/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.8/xpaas-templates/eap64-amq-persistent-s2i.json b/roles/openshift_examples/files/examples/v3.8/xpaas-templates/eap64-amq-persistent-s2i.json index 9ebbfd06c..de62b246e 100644 --- a/roles/openshift_examples/files/examples/v3.8/xpaas-templates/eap64-amq-persistent-s2i.json +++ b/roles/openshift_examples/files/examples/v3.8/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.8/xpaas-templates/eap64-amq-s2i.json b/roles/openshift_examples/files/examples/v3.8/xpaas-templates/eap64-amq-s2i.json index 6b0e1a30c..52824aa0f 100644 --- a/roles/openshift_examples/files/examples/v3.8/xpaas-templates/eap64-amq-s2i.json +++ b/roles/openshift_examples/files/examples/v3.8/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.8/xpaas-templates/eap64-basic-s2i.json b/roles/openshift_examples/files/examples/v3.8/xpaas-templates/eap64-basic-s2i.json index 17fdd2333..ced21226f 100644 --- a/roles/openshift_examples/files/examples/v3.8/xpaas-templates/eap64-basic-s2i.json +++ b/roles/openshift_examples/files/examples/v3.8/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.8/xpaas-templates/eap64-https-s2i.json b/roles/openshift_examples/files/examples/v3.8/xpaas-templates/eap64-https-s2i.json index 8616ac04f..1702f493c 100644 --- a/roles/openshift_examples/files/examples/v3.8/xpaas-templates/eap64-https-s2i.json +++ b/roles/openshift_examples/files/examples/v3.8/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.8/xpaas-templates/eap64-mongodb-persistent-s2i.json b/roles/openshift_examples/files/examples/v3.8/xpaas-templates/eap64-mongodb-persistent-s2i.json index ea3b46d78..a56fe4ed2 100644 --- a/roles/openshift_examples/files/examples/v3.8/xpaas-templates/eap64-mongodb-persistent-s2i.json +++ b/roles/openshift_examples/files/examples/v3.8/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.8/xpaas-templates/eap64-mongodb-s2i.json b/roles/openshift_examples/files/examples/v3.8/xpaas-templates/eap64-mongodb-s2i.json index 4aa9be281..cb92bac64 100644 --- a/roles/openshift_examples/files/examples/v3.8/xpaas-templates/eap64-mongodb-s2i.json +++ b/roles/openshift_examples/files/examples/v3.8/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.8/xpaas-templates/eap64-mysql-persistent-s2i.json b/roles/openshift_examples/files/examples/v3.8/xpaas-templates/eap64-mysql-persistent-s2i.json index 304f11348..a6dd17d09 100644 --- a/roles/openshift_examples/files/examples/v3.8/xpaas-templates/eap64-mysql-persistent-s2i.json +++ b/roles/openshift_examples/files/examples/v3.8/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.8/xpaas-templates/eap64-mysql-s2i.json b/roles/openshift_examples/files/examples/v3.8/xpaas-templates/eap64-mysql-s2i.json index bc1cdaca5..936f5d607 100644 --- a/roles/openshift_examples/files/examples/v3.8/xpaas-templates/eap64-mysql-s2i.json +++ b/roles/openshift_examples/files/examples/v3.8/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.8/xpaas-templates/eap64-postgresql-persistent-s2i.json b/roles/openshift_examples/files/examples/v3.8/xpaas-templates/eap64-postgresql-persistent-s2i.json index d2e6ea25b..53e9a38c8 100644 --- a/roles/openshift_examples/files/examples/v3.8/xpaas-templates/eap64-postgresql-persistent-s2i.json +++ b/roles/openshift_examples/files/examples/v3.8/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.8/xpaas-templates/eap64-postgresql-s2i.json b/roles/openshift_examples/files/examples/v3.8/xpaas-templates/eap64-postgresql-s2i.json index 7a2d4009e..a13e68daf 100644 --- a/roles/openshift_examples/files/examples/v3.8/xpaas-templates/eap64-postgresql-s2i.json +++ b/roles/openshift_examples/files/examples/v3.8/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.8/xpaas-templates/eap64-sso-s2i.json b/roles/openshift_examples/files/examples/v3.8/xpaas-templates/eap64-sso-s2i.json index 368f147f4..2c5e16f40 100644 --- a/roles/openshift_examples/files/examples/v3.8/xpaas-templates/eap64-sso-s2i.json +++ b/roles/openshift_examples/files/examples/v3.8/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.8/xpaas-templates/eap64-third-party-db-s2i.json b/roles/openshift_examples/files/examples/v3.8/xpaas-templates/eap64-third-party-db-s2i.json index 701f4eee6..75c2c466c 100644 --- a/roles/openshift_examples/files/examples/v3.8/xpaas-templates/eap64-third-party-db-s2i.json +++ b/roles/openshift_examples/files/examples/v3.8/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.8/xpaas-templates/eap64-tx-recovery-s2i.json b/roles/openshift_examples/files/examples/v3.8/xpaas-templates/eap64-tx-recovery-s2i.json new file mode 100644 index 000000000..de5ebe326 --- /dev/null +++ b/roles/openshift_examples/files/examples/v3.8/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.8/xpaas-templates/eap70-amq-persistent-s2i.json b/roles/openshift_examples/files/examples/v3.8/xpaas-templates/eap70-amq-persistent-s2i.json index d16756bad..eb6929a2c 100644 --- a/roles/openshift_examples/files/examples/v3.8/xpaas-templates/eap70-amq-persistent-s2i.json +++ b/roles/openshift_examples/files/examples/v3.8/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.8/xpaas-templates/eap70-amq-s2i.json b/roles/openshift_examples/files/examples/v3.8/xpaas-templates/eap70-amq-s2i.json index 70323214f..ca0efa2d9 100644 --- a/roles/openshift_examples/files/examples/v3.8/xpaas-templates/eap70-amq-s2i.json +++ b/roles/openshift_examples/files/examples/v3.8/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.8/xpaas-templates/eap70-basic-s2i.json b/roles/openshift_examples/files/examples/v3.8/xpaas-templates/eap70-basic-s2i.json index 312db1971..a0d781a4d 100644 --- a/roles/openshift_examples/files/examples/v3.8/xpaas-templates/eap70-basic-s2i.json +++ b/roles/openshift_examples/files/examples/v3.8/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.8/xpaas-templates/eap70-https-s2i.json b/roles/openshift_examples/files/examples/v3.8/xpaas-templates/eap70-https-s2i.json index 7c3b35f5a..0b7d09001 100644 --- a/roles/openshift_examples/files/examples/v3.8/xpaas-templates/eap70-https-s2i.json +++ b/roles/openshift_examples/files/examples/v3.8/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.8/xpaas-templates/eap70-mongodb-persistent-s2i.json b/roles/openshift_examples/files/examples/v3.8/xpaas-templates/eap70-mongodb-persistent-s2i.json index 205e451c7..d6a154a38 100644 --- a/roles/openshift_examples/files/examples/v3.8/xpaas-templates/eap70-mongodb-persistent-s2i.json +++ b/roles/openshift_examples/files/examples/v3.8/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.8/xpaas-templates/eap70-mongodb-s2i.json b/roles/openshift_examples/files/examples/v3.8/xpaas-templates/eap70-mongodb-s2i.json index 63b57d5dc..31a2e161f 100644 --- a/roles/openshift_examples/files/examples/v3.8/xpaas-templates/eap70-mongodb-s2i.json +++ b/roles/openshift_examples/files/examples/v3.8/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.8/xpaas-templates/eap70-mysql-persistent-s2i.json b/roles/openshift_examples/files/examples/v3.8/xpaas-templates/eap70-mysql-persistent-s2i.json index f9f77f22c..d487cfc40 100644 --- a/roles/openshift_examples/files/examples/v3.8/xpaas-templates/eap70-mysql-persistent-s2i.json +++ b/roles/openshift_examples/files/examples/v3.8/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.8/xpaas-templates/eap70-mysql-s2i.json b/roles/openshift_examples/files/examples/v3.8/xpaas-templates/eap70-mysql-s2i.json index 8ea433a80..ee4e8f01d 100644 --- a/roles/openshift_examples/files/examples/v3.8/xpaas-templates/eap70-mysql-s2i.json +++ b/roles/openshift_examples/files/examples/v3.8/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.8/xpaas-templates/eap70-postgresql-persistent-s2i.json b/roles/openshift_examples/files/examples/v3.8/xpaas-templates/eap70-postgresql-persistent-s2i.json index a2bc9d3b9..aba0c8c64 100644 --- a/roles/openshift_examples/files/examples/v3.8/xpaas-templates/eap70-postgresql-persistent-s2i.json +++ b/roles/openshift_examples/files/examples/v3.8/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.8/xpaas-templates/eap70-postgresql-s2i.json b/roles/openshift_examples/files/examples/v3.8/xpaas-templates/eap70-postgresql-s2i.json index 66b0c737d..bf7c6cf89 100644 --- a/roles/openshift_examples/files/examples/v3.8/xpaas-templates/eap70-postgresql-s2i.json +++ b/roles/openshift_examples/files/examples/v3.8/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.8/xpaas-templates/eap70-sso-s2i.json b/roles/openshift_examples/files/examples/v3.8/xpaas-templates/eap70-sso-s2i.json index 2201ff7f3..3601e2354 100644 --- a/roles/openshift_examples/files/examples/v3.8/xpaas-templates/eap70-sso-s2i.json +++ b/roles/openshift_examples/files/examples/v3.8/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.8/xpaas-templates/eap70-third-party-db-s2i.json b/roles/openshift_examples/files/examples/v3.8/xpaas-templates/eap70-third-party-db-s2i.json index 3ca69f6c7..08b2717be 100644 --- a/roles/openshift_examples/files/examples/v3.8/xpaas-templates/eap70-third-party-db-s2i.json +++ b/roles/openshift_examples/files/examples/v3.8/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.8/xpaas-templates/eap70-tx-recovery-s2i.json b/roles/openshift_examples/files/examples/v3.8/xpaas-templates/eap70-tx-recovery-s2i.json new file mode 100644 index 000000000..4edfb1336 --- /dev/null +++ b/roles/openshift_examples/files/examples/v3.8/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.8/xpaas-templates/eap71-amq-persistent-s2i.json b/roles/openshift_examples/files/examples/v3.8/xpaas-templates/eap71-amq-persistent-s2i.json index dbc1a8013..d5e785f69 100644 --- a/roles/openshift_examples/files/examples/v3.8/xpaas-templates/eap71-amq-persistent-s2i.json +++ b/roles/openshift_examples/files/examples/v3.8/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.8/xpaas-templates/eap71-amq-s2i.json b/roles/openshift_examples/files/examples/v3.8/xpaas-templates/eap71-amq-s2i.json index 6e330eae9..16d19d540 100644 --- a/roles/openshift_examples/files/examples/v3.8/xpaas-templates/eap71-amq-s2i.json +++ b/roles/openshift_examples/files/examples/v3.8/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.8/xpaas-templates/eap71-basic-s2i.json b/roles/openshift_examples/files/examples/v3.8/xpaas-templates/eap71-basic-s2i.json index 892ec468c..ece7c7310 100644 --- a/roles/openshift_examples/files/examples/v3.8/xpaas-templates/eap71-basic-s2i.json +++ b/roles/openshift_examples/files/examples/v3.8/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.8/xpaas-templates/eap71-https-s2i.json b/roles/openshift_examples/files/examples/v3.8/xpaas-templates/eap71-https-s2i.json index 7426830ec..515e69e83 100644 --- a/roles/openshift_examples/files/examples/v3.8/xpaas-templates/eap71-https-s2i.json +++ b/roles/openshift_examples/files/examples/v3.8/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.8/xpaas-templates/eap71-mongodb-persistent-s2i.json b/roles/openshift_examples/files/examples/v3.8/xpaas-templates/eap71-mongodb-persistent-s2i.json index fb7f27acf..97ed818d3 100644 --- a/roles/openshift_examples/files/examples/v3.8/xpaas-templates/eap71-mongodb-persistent-s2i.json +++ b/roles/openshift_examples/files/examples/v3.8/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.8/xpaas-templates/eap71-mongodb-s2i.json b/roles/openshift_examples/files/examples/v3.8/xpaas-templates/eap71-mongodb-s2i.json index 915c9ba0a..b59ca2b5e 100644 --- a/roles/openshift_examples/files/examples/v3.8/xpaas-templates/eap71-mongodb-s2i.json +++ b/roles/openshift_examples/files/examples/v3.8/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.8/xpaas-templates/eap71-mysql-persistent-s2i.json b/roles/openshift_examples/files/examples/v3.8/xpaas-templates/eap71-mysql-persistent-s2i.json index 6af9e5f50..aee9966a5 100644 --- a/roles/openshift_examples/files/examples/v3.8/xpaas-templates/eap71-mysql-persistent-s2i.json +++ b/roles/openshift_examples/files/examples/v3.8/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.8/xpaas-templates/eap71-mysql-s2i.json b/roles/openshift_examples/files/examples/v3.8/xpaas-templates/eap71-mysql-s2i.json index c7d14d3c7..d1062329e 100644 --- a/roles/openshift_examples/files/examples/v3.8/xpaas-templates/eap71-mysql-s2i.json +++ b/roles/openshift_examples/files/examples/v3.8/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.8/xpaas-templates/eap71-postgresql-persistent-s2i.json b/roles/openshift_examples/files/examples/v3.8/xpaas-templates/eap71-postgresql-persistent-s2i.json index a8d77b0ab..e4c306478 100644 --- a/roles/openshift_examples/files/examples/v3.8/xpaas-templates/eap71-postgresql-persistent-s2i.json +++ b/roles/openshift_examples/files/examples/v3.8/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.8/xpaas-templates/eap71-postgresql-s2i.json b/roles/openshift_examples/files/examples/v3.8/xpaas-templates/eap71-postgresql-s2i.json index d87f05ea8..ef5402199 100644 --- a/roles/openshift_examples/files/examples/v3.8/xpaas-templates/eap71-postgresql-s2i.json +++ b/roles/openshift_examples/files/examples/v3.8/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.8/xpaas-templates/eap71-sso-s2i.json b/roles/openshift_examples/files/examples/v3.8/xpaas-templates/eap71-sso-s2i.json index 96b3dffc9..3e5c346bf 100644 --- a/roles/openshift_examples/files/examples/v3.8/xpaas-templates/eap71-sso-s2i.json +++ b/roles/openshift_examples/files/examples/v3.8/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.8/xpaas-templates/eap71-third-party-db-s2i.json b/roles/openshift_examples/files/examples/v3.8/xpaas-templates/eap71-third-party-db-s2i.json index a2a7264fb..41644db89 100644 --- a/roles/openshift_examples/files/examples/v3.8/xpaas-templates/eap71-third-party-db-s2i.json +++ b/roles/openshift_examples/files/examples/v3.8/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.8/xpaas-templates/eap71-tx-recovery-s2i.json b/roles/openshift_examples/files/examples/v3.8/xpaas-templates/eap71-tx-recovery-s2i.json new file mode 100644 index 000000000..e2525c7e7 --- /dev/null +++ b/roles/openshift_examples/files/examples/v3.8/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.8/xpaas-templates/jws31-tomcat7-basic-s2i.json b/roles/openshift_examples/files/examples/v3.8/xpaas-templates/jws31-tomcat7-basic-s2i.json index 42e352538..146cbeb0e 100644 --- a/roles/openshift_examples/files/examples/v3.8/xpaas-templates/jws31-tomcat7-basic-s2i.json +++ b/roles/openshift_examples/files/examples/v3.8/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.8/xpaas-templates/jws31-tomcat7-https-s2i.json b/roles/openshift_examples/files/examples/v3.8/xpaas-templates/jws31-tomcat7-https-s2i.json index b0a81d9c3..8de78d6b6 100644 --- a/roles/openshift_examples/files/examples/v3.8/xpaas-templates/jws31-tomcat7-https-s2i.json +++ b/roles/openshift_examples/files/examples/v3.8/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.8/xpaas-templates/jws31-tomcat7-mongodb-persistent-s2i.json b/roles/openshift_examples/files/examples/v3.8/xpaas-templates/jws31-tomcat7-mongodb-persistent-s2i.json index 565f97822..97b0df4c3 100644 --- a/roles/openshift_examples/files/examples/v3.8/xpaas-templates/jws31-tomcat7-mongodb-persistent-s2i.json +++ b/roles/openshift_examples/files/examples/v3.8/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.8/xpaas-templates/jws31-tomcat7-mongodb-s2i.json b/roles/openshift_examples/files/examples/v3.8/xpaas-templates/jws31-tomcat7-mongodb-s2i.json index fc473f5c3..28155b34b 100644 --- a/roles/openshift_examples/files/examples/v3.8/xpaas-templates/jws31-tomcat7-mongodb-s2i.json +++ b/roles/openshift_examples/files/examples/v3.8/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.8/xpaas-templates/jws31-tomcat7-mysql-persistent-s2i.json b/roles/openshift_examples/files/examples/v3.8/xpaas-templates/jws31-tomcat7-mysql-persistent-s2i.json index 1223acd0f..0a87c85a9 100644 --- a/roles/openshift_examples/files/examples/v3.8/xpaas-templates/jws31-tomcat7-mysql-persistent-s2i.json +++ b/roles/openshift_examples/files/examples/v3.8/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.8/xpaas-templates/jws31-tomcat7-mysql-s2i.json b/roles/openshift_examples/files/examples/v3.8/xpaas-templates/jws31-tomcat7-mysql-s2i.json index 39becd41e..b77f0cc22 100644 --- a/roles/openshift_examples/files/examples/v3.8/xpaas-templates/jws31-tomcat7-mysql-s2i.json +++ b/roles/openshift_examples/files/examples/v3.8/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.8/xpaas-templates/jws31-tomcat7-postgresql-persistent-s2i.json b/roles/openshift_examples/files/examples/v3.8/xpaas-templates/jws31-tomcat7-postgresql-persistent-s2i.json index 77f4f8c9f..4fabc2cb4 100644 --- a/roles/openshift_examples/files/examples/v3.8/xpaas-templates/jws31-tomcat7-postgresql-persistent-s2i.json +++ b/roles/openshift_examples/files/examples/v3.8/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.8/xpaas-templates/jws31-tomcat7-postgresql-s2i.json b/roles/openshift_examples/files/examples/v3.8/xpaas-templates/jws31-tomcat7-postgresql-s2i.json index 6d1d7aef7..64eaff560 100644 --- a/roles/openshift_examples/files/examples/v3.8/xpaas-templates/jws31-tomcat7-postgresql-s2i.json +++ b/roles/openshift_examples/files/examples/v3.8/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.8/xpaas-templates/jws31-tomcat8-basic-s2i.json b/roles/openshift_examples/files/examples/v3.8/xpaas-templates/jws31-tomcat8-basic-s2i.json index 9e7dc3488..5cc2a565f 100644 --- a/roles/openshift_examples/files/examples/v3.8/xpaas-templates/jws31-tomcat8-basic-s2i.json +++ b/roles/openshift_examples/files/examples/v3.8/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.8/xpaas-templates/jws31-tomcat8-https-s2i.json b/roles/openshift_examples/files/examples/v3.8/xpaas-templates/jws31-tomcat8-https-s2i.json index 8fd5d9fab..9d197649b 100644 --- a/roles/openshift_examples/files/examples/v3.8/xpaas-templates/jws31-tomcat8-https-s2i.json +++ b/roles/openshift_examples/files/examples/v3.8/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.8/xpaas-templates/jws31-tomcat8-mongodb-persistent-s2i.json b/roles/openshift_examples/files/examples/v3.8/xpaas-templates/jws31-tomcat8-mongodb-persistent-s2i.json index f4b11ccfa..51bd9e7cc 100644 --- a/roles/openshift_examples/files/examples/v3.8/xpaas-templates/jws31-tomcat8-mongodb-persistent-s2i.json +++ b/roles/openshift_examples/files/examples/v3.8/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.8/xpaas-templates/jws31-tomcat8-mongodb-s2i.json b/roles/openshift_examples/files/examples/v3.8/xpaas-templates/jws31-tomcat8-mongodb-s2i.json index e2f69f157..9f2beef31 100644 --- a/roles/openshift_examples/files/examples/v3.8/xpaas-templates/jws31-tomcat8-mongodb-s2i.json +++ b/roles/openshift_examples/files/examples/v3.8/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.8/xpaas-templates/jws31-tomcat8-mysql-persistent-s2i.json b/roles/openshift_examples/files/examples/v3.8/xpaas-templates/jws31-tomcat8-mysql-persistent-s2i.json index 579071cb1..5213cc261 100644 --- a/roles/openshift_examples/files/examples/v3.8/xpaas-templates/jws31-tomcat8-mysql-persistent-s2i.json +++ b/roles/openshift_examples/files/examples/v3.8/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.8/xpaas-templates/jws31-tomcat8-mysql-s2i.json b/roles/openshift_examples/files/examples/v3.8/xpaas-templates/jws31-tomcat8-mysql-s2i.json index e84d61608..1ccd4fa37 100644 --- a/roles/openshift_examples/files/examples/v3.8/xpaas-templates/jws31-tomcat8-mysql-s2i.json +++ b/roles/openshift_examples/files/examples/v3.8/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.8/xpaas-templates/jws31-tomcat8-postgresql-persistent-s2i.json b/roles/openshift_examples/files/examples/v3.8/xpaas-templates/jws31-tomcat8-postgresql-persistent-s2i.json index 83a6ca19b..86d8c0fa8 100644 --- a/roles/openshift_examples/files/examples/v3.8/xpaas-templates/jws31-tomcat8-postgresql-persistent-s2i.json +++ b/roles/openshift_examples/files/examples/v3.8/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.8/xpaas-templates/jws31-tomcat8-postgresql-s2i.json b/roles/openshift_examples/files/examples/v3.8/xpaas-templates/jws31-tomcat8-postgresql-s2i.json index e28cf8a04..b77234318 100644 --- a/roles/openshift_examples/files/examples/v3.8/xpaas-templates/jws31-tomcat8-postgresql-s2i.json +++ b/roles/openshift_examples/files/examples/v3.8/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.8/xpaas-templates/karaf2-camel-amq-template.json b/roles/openshift_examples/files/examples/v3.8/xpaas-templates/karaf2-camel-amq-template.json index aad649f84..3415bba4a 100644 --- a/roles/openshift_examples/files/examples/v3.8/xpaas-templates/karaf2-camel-amq-template.json +++ b/roles/openshift_examples/files/examples/v3.8/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.8/xpaas-templates/karaf2-camel-log-template.json b/roles/openshift_examples/files/examples/v3.8/xpaas-templates/karaf2-camel-log-template.json index 38b7bc249..188ae1734 100644 --- a/roles/openshift_examples/files/examples/v3.8/xpaas-templates/karaf2-camel-log-template.json +++ b/roles/openshift_examples/files/examples/v3.8/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.8/xpaas-templates/karaf2-camel-rest-sql-template.json b/roles/openshift_examples/files/examples/v3.8/xpaas-templates/karaf2-camel-rest-sql-template.json index 6d9573e5b..0ed72f39c 100644 --- a/roles/openshift_examples/files/examples/v3.8/xpaas-templates/karaf2-camel-rest-sql-template.json +++ b/roles/openshift_examples/files/examples/v3.8/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.8/xpaas-templates/karaf2-cxf-rest-template.json b/roles/openshift_examples/files/examples/v3.8/xpaas-templates/karaf2-cxf-rest-template.json index fdc0c00e5..3a34eebae 100644 --- a/roles/openshift_examples/files/examples/v3.8/xpaas-templates/karaf2-cxf-rest-template.json +++ b/roles/openshift_examples/files/examples/v3.8/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.8/xpaas-templates/openjdk18-web-basic-s2i.json b/roles/openshift_examples/files/examples/v3.8/xpaas-templates/openjdk18-web-basic-s2i.json index 6336f0398..466dfb984 100644 --- a/roles/openshift_examples/files/examples/v3.8/xpaas-templates/openjdk18-web-basic-s2i.json +++ b/roles/openshift_examples/files/examples/v3.8/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.8/xpaas-templates/processserver64-amq-mysql-persistent-s2i.json b/roles/openshift_examples/files/examples/v3.8/xpaas-templates/processserver64-amq-mysql-persistent-s2i.json index 9ef04ae71..ec1619137 100644 --- a/roles/openshift_examples/files/examples/v3.8/xpaas-templates/processserver64-amq-mysql-persistent-s2i.json +++ b/roles/openshift_examples/files/examples/v3.8/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.8/xpaas-templates/processserver64-amq-mysql-s2i.json b/roles/openshift_examples/files/examples/v3.8/xpaas-templates/processserver64-amq-mysql-s2i.json index 4cb45db42..0deb96c82 100644 --- a/roles/openshift_examples/files/examples/v3.8/xpaas-templates/processserver64-amq-mysql-s2i.json +++ b/roles/openshift_examples/files/examples/v3.8/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.8/xpaas-templates/processserver64-amq-postgresql-persistent-s2i.json b/roles/openshift_examples/files/examples/v3.8/xpaas-templates/processserver64-amq-postgresql-persistent-s2i.json index 56fefcc0a..92767f3b5 100644 --- a/roles/openshift_examples/files/examples/v3.8/xpaas-templates/processserver64-amq-postgresql-persistent-s2i.json +++ b/roles/openshift_examples/files/examples/v3.8/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.8/xpaas-templates/processserver64-amq-postgresql-s2i.json b/roles/openshift_examples/files/examples/v3.8/xpaas-templates/processserver64-amq-postgresql-s2i.json index bb8d2df28..add35a349 100644 --- a/roles/openshift_examples/files/examples/v3.8/xpaas-templates/processserver64-amq-postgresql-s2i.json +++ b/roles/openshift_examples/files/examples/v3.8/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.8/xpaas-templates/processserver64-basic-s2i.json b/roles/openshift_examples/files/examples/v3.8/xpaas-templates/processserver64-basic-s2i.json index 1b7cc8cf1..9af4b6cb4 100644 --- a/roles/openshift_examples/files/examples/v3.8/xpaas-templates/processserver64-basic-s2i.json +++ b/roles/openshift_examples/files/examples/v3.8/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.8/xpaas-templates/processserver64-mysql-persistent-s2i.json b/roles/openshift_examples/files/examples/v3.8/xpaas-templates/processserver64-mysql-persistent-s2i.json index 1a4d0887c..97388a2e1 100644 --- a/roles/openshift_examples/files/examples/v3.8/xpaas-templates/processserver64-mysql-persistent-s2i.json +++ b/roles/openshift_examples/files/examples/v3.8/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.8/xpaas-templates/processserver64-mysql-s2i.json b/roles/openshift_examples/files/examples/v3.8/xpaas-templates/processserver64-mysql-s2i.json index 7c491d832..2e7dc3158 100644 --- a/roles/openshift_examples/files/examples/v3.8/xpaas-templates/processserver64-mysql-s2i.json +++ b/roles/openshift_examples/files/examples/v3.8/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.8/xpaas-templates/processserver64-postgresql-persistent-s2i.json b/roles/openshift_examples/files/examples/v3.8/xpaas-templates/processserver64-postgresql-persistent-s2i.json index 8965ea41f..66dc891cb 100644 --- a/roles/openshift_examples/files/examples/v3.8/xpaas-templates/processserver64-postgresql-persistent-s2i.json +++ b/roles/openshift_examples/files/examples/v3.8/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.8/xpaas-templates/processserver64-postgresql-s2i.json b/roles/openshift_examples/files/examples/v3.8/xpaas-templates/processserver64-postgresql-s2i.json index e21f0ce4e..bb9efc2bb 100644 --- a/roles/openshift_examples/files/examples/v3.8/xpaas-templates/processserver64-postgresql-s2i.json +++ b/roles/openshift_examples/files/examples/v3.8/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.8/xpaas-templates/spring-boot-camel-amq-template.json b/roles/openshift_examples/files/examples/v3.8/xpaas-templates/spring-boot-camel-amq-template.json index 2c1a73a29..89f10f955 100644 --- a/roles/openshift_examples/files/examples/v3.8/xpaas-templates/spring-boot-camel-amq-template.json +++ b/roles/openshift_examples/files/examples/v3.8/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.8/xpaas-templates/spring-boot-camel-config-template.json b/roles/openshift_examples/files/examples/v3.8/xpaas-templates/spring-boot-camel-config-template.json index b62e768b6..6b298b994 100644 --- a/roles/openshift_examples/files/examples/v3.8/xpaas-templates/spring-boot-camel-config-template.json +++ b/roles/openshift_examples/files/examples/v3.8/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.8/xpaas-templates/spring-boot-camel-drools-template.json b/roles/openshift_examples/files/examples/v3.8/xpaas-templates/spring-boot-camel-drools-template.json index 91081e493..e646ccdb4 100644 --- a/roles/openshift_examples/files/examples/v3.8/xpaas-templates/spring-boot-camel-drools-template.json +++ b/roles/openshift_examples/files/examples/v3.8/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.8/xpaas-templates/spring-boot-camel-infinispan-template.json b/roles/openshift_examples/files/examples/v3.8/xpaas-templates/spring-boot-camel-infinispan-template.json index 8d97400ab..1d4910b9a 100644 --- a/roles/openshift_examples/files/examples/v3.8/xpaas-templates/spring-boot-camel-infinispan-template.json +++ b/roles/openshift_examples/files/examples/v3.8/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.8/xpaas-templates/spring-boot-camel-rest-sql-template.json b/roles/openshift_examples/files/examples/v3.8/xpaas-templates/spring-boot-camel-rest-sql-template.json index bf722844c..61f6cb983 100644 --- a/roles/openshift_examples/files/examples/v3.8/xpaas-templates/spring-boot-camel-rest-sql-template.json +++ b/roles/openshift_examples/files/examples/v3.8/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.8/xpaas-templates/spring-boot-camel-teiid-template.json b/roles/openshift_examples/files/examples/v3.8/xpaas-templates/spring-boot-camel-teiid-template.json index 856264615..1f5542069 100644 --- a/roles/openshift_examples/files/examples/v3.8/xpaas-templates/spring-boot-camel-teiid-template.json +++ b/roles/openshift_examples/files/examples/v3.8/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.8/xpaas-templates/spring-boot-camel-template.json b/roles/openshift_examples/files/examples/v3.8/xpaas-templates/spring-boot-camel-template.json index 9c0fe287e..939979912 100644 --- a/roles/openshift_examples/files/examples/v3.8/xpaas-templates/spring-boot-camel-template.json +++ b/roles/openshift_examples/files/examples/v3.8/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.8/xpaas-templates/spring-boot-camel-xml-template.json b/roles/openshift_examples/files/examples/v3.8/xpaas-templates/spring-boot-camel-xml-template.json index 87c0e347a..c5691bc9b 100644 --- a/roles/openshift_examples/files/examples/v3.8/xpaas-templates/spring-boot-camel-xml-template.json +++ b/roles/openshift_examples/files/examples/v3.8/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.8/xpaas-templates/spring-boot-cxf-jaxrs-template.json b/roles/openshift_examples/files/examples/v3.8/xpaas-templates/spring-boot-cxf-jaxrs-template.json index 8b0261035..577eebf58 100644 --- a/roles/openshift_examples/files/examples/v3.8/xpaas-templates/spring-boot-cxf-jaxrs-template.json +++ b/roles/openshift_examples/files/examples/v3.8/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.8/xpaas-templates/spring-boot-cxf-jaxws-template.json b/roles/openshift_examples/files/examples/v3.8/xpaas-templates/spring-boot-cxf-jaxws-template.json index 8b36f5f0b..11441276a 100644 --- a/roles/openshift_examples/files/examples/v3.8/xpaas-templates/spring-boot-cxf-jaxws-template.json +++ b/roles/openshift_examples/files/examples/v3.8/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.8/xpaas-templates/sso71-https.json b/roles/openshift_examples/files/examples/v3.8/xpaas-templates/sso71-https.json index 26dd26624..655ec2eaa 100644 --- a/roles/openshift_examples/files/examples/v3.8/xpaas-templates/sso71-https.json +++ b/roles/openshift_examples/files/examples/v3.8/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.8/xpaas-templates/sso71-mysql-persistent.json b/roles/openshift_examples/files/examples/v3.8/xpaas-templates/sso71-mysql-persistent.json index 7092bb65e..83de1ab37 100644 --- a/roles/openshift_examples/files/examples/v3.8/xpaas-templates/sso71-mysql-persistent.json +++ b/roles/openshift_examples/files/examples/v3.8/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.8/xpaas-templates/sso71-mysql.json b/roles/openshift_examples/files/examples/v3.8/xpaas-templates/sso71-mysql.json index d90f0a0cc..269761dac 100644 --- a/roles/openshift_examples/files/examples/v3.8/xpaas-templates/sso71-mysql.json +++ b/roles/openshift_examples/files/examples/v3.8/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.8/xpaas-templates/sso71-postgresql-persistent.json b/roles/openshift_examples/files/examples/v3.8/xpaas-templates/sso71-postgresql-persistent.json index b1077db91..cd167d983 100644 --- a/roles/openshift_examples/files/examples/v3.8/xpaas-templates/sso71-postgresql-persistent.json +++ b/roles/openshift_examples/files/examples/v3.8/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.8/xpaas-templates/sso71-postgresql.json b/roles/openshift_examples/files/examples/v3.8/xpaas-templates/sso71-postgresql.json index 0955d712a..365383f8a 100644 --- a/roles/openshift_examples/files/examples/v3.8/xpaas-templates/sso71-postgresql.json +++ b/roles/openshift_examples/files/examples/v3.8/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" + } ] } } 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/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" + } ] } } diff --git a/roles/openshift_facts/library/openshift_facts.py b/roles/openshift_facts/library/openshift_facts.py index 11a51b6bb..8d0f615b5 100755 --- a/roles/openshift_facts/library/openshift_facts.py +++ b/roles/openshift_facts/library/openshift_facts.py @@ -18,7 +18,7 @@ import socket import ipaddress from distutils.util import strtobool from distutils.version import LooseVersion -from ansible.module_utils.six import u +from ansible.module_utils.six import text_type from ansible.module_utils.six import string_types from ansible.module_utils.six.moves import configparser @@ -1153,7 +1153,7 @@ def set_proxy_facts(facts): if 'no_proxy_internal_hostnames' in common: common['no_proxy'].extend(common['no_proxy_internal_hostnames'].split(',')) # We always add local dns domain and ourselves no matter what - kube_svc_ip = str(ipaddress.ip_network(u(common['portal_net']))[1]) + kube_svc_ip = str(ipaddress.ip_network(text_type(common['portal_net']))[1]) common['no_proxy'].append(kube_svc_ip) common['no_proxy'].append('.' + common['dns_domain']) common['no_proxy'].append('.svc') diff --git a/roles/openshift_logging/library/openshift_logging_facts.py b/roles/openshift_logging/library/openshift_logging_facts.py index 37ffb0204..a7f9fdc8e 100644 --- a/roles/openshift_logging/library/openshift_logging_facts.py +++ b/roles/openshift_logging/library/openshift_logging_facts.py @@ -208,9 +208,10 @@ class OpenshiftLoggingFacts(OCBaseCommand): def facts_from_configmap(self, comp, kind, name, config_key, yaml_file=None): '''Extracts facts in logging namespace from configmap''' if yaml_file is not None: - config_facts = yaml.load(yaml_file) - self.facts[comp][kind][name][config_key] = config_facts - self.facts[comp][kind][name]["raw"] = yaml_file + if config_key.endswith(".yml") or config_key.endswith(".yaml"): + config_facts = yaml.load(yaml_file) + self.facts[comp][kind][name][config_key] = config_facts + self.facts[comp][kind][name][config_key]["raw"] = yaml_file def facts_for_configmaps(self, namespace): ''' Gathers facts for configmaps in logging namespace ''' diff --git a/roles/openshift_logging_curator/vars/default_images.yml b/roles/openshift_logging_curator/vars/default_images.yml index 208b41afa..503be9b58 100644 --- a/roles/openshift_logging_curator/vars/default_images.yml +++ b/roles/openshift_logging_curator/vars/default_images.yml @@ -1,3 +1,3 @@ --- __openshift_logging_curator_image_prefix: "{{ openshift_logging_image_prefix | default('docker.io/openshift/origin-') }}" -__openshift_logging_curator_image_version: "{{ openshift_logging_image_version | default('latest') }}" +__openshift_logging_curator_image_version: "{{ openshift_logging_image_version | default(openshift_image_tag) }}" diff --git a/roles/openshift_logging_curator/vars/openshift-enterprise.yml b/roles/openshift_logging_curator/vars/openshift-enterprise.yml index 79cf131fd..e0507fe3c 100644 --- a/roles/openshift_logging_curator/vars/openshift-enterprise.yml +++ b/roles/openshift_logging_curator/vars/openshift-enterprise.yml @@ -1,3 +1,3 @@ --- __openshift_logging_curator_image_prefix: "{{ openshift_logging_image_prefix | default('registry.access.redhat.com/openshift3/') }}" -__openshift_logging_curator_image_version: "{{ openshift_logging_image_version | default ('v3.7') }}" +__openshift_logging_curator_image_version: "{{ openshift_logging_image_version | default (openshift_image_tag) }}" diff --git a/roles/openshift_logging_elasticsearch/tasks/get_es_version.yml b/roles/openshift_logging_elasticsearch/tasks/get_es_version.yml index 16de6f252..7c4ecaa5b 100644 --- a/roles/openshift_logging_elasticsearch/tasks/get_es_version.yml +++ b/roles/openshift_logging_elasticsearch/tasks/get_es_version.yml @@ -1,21 +1,21 @@ --- - command: > - oc get pod -l component=es,provider=openshift -n {{ openshift_logging_elasticsearch_namespace }} -o jsonpath={.items[?(@.status.phase==\"Running\")].metadata.name} + {{ openshift_client_binary }} get pod -l component=es,provider=openshift -n {{ openshift_logging_elasticsearch_namespace }} -o jsonpath={.items[?(@.status.phase==\"Running\")].metadata.name} register: _cluster_pods - name: "Getting ES version for logging-es cluster" command: > - oc exec {{ _cluster_pods.stdout.split(' ')[0] }} -c elasticsearch -n {{ openshift_logging_elasticsearch_namespace }} -- {{ __es_local_curl }} -XGET 'https://localhost:9200/' + {{ openshift_client_binary }} exec {{ _cluster_pods.stdout.split(' ')[0] }} -c elasticsearch -n {{ openshift_logging_elasticsearch_namespace }} -- {{ __es_local_curl }} -XGET 'https://localhost:9200/' register: _curl_output when: _cluster_pods.stdout_lines | count > 0 - command: > - oc get pod -l component=es-ops,provider=openshift -n {{ openshift_logging_elasticsearch_namespace }} -o jsonpath={.items[?(@.status.phase==\"Running\")].metadata.name} + {{ openshift_client_binary }} get pod -l component=es-ops,provider=openshift -n {{ openshift_logging_elasticsearch_namespace }} -o jsonpath={.items[?(@.status.phase==\"Running\")].metadata.name} register: _ops_cluster_pods - name: "Getting ES version for logging-es-ops cluster" command: > - oc exec {{ _ops_cluster_pods.stdout.split(' ')[0] }} -c elasticsearch -n {{ openshift_logging_elasticsearch_namespace }} -- {{ __es_local_curl }} -XGET 'https://localhost:9200/' + {{ openshift_client_binary }} exec {{ _ops_cluster_pods.stdout.split(' ')[0] }} -c elasticsearch -n {{ openshift_logging_elasticsearch_namespace }} -- {{ __es_local_curl }} -XGET 'https://localhost:9200/' register: _ops_curl_output when: _ops_cluster_pods.stdout_lines | count > 0 diff --git a/roles/openshift_logging_elasticsearch/tasks/main.yaml b/roles/openshift_logging_elasticsearch/tasks/main.yaml index 8a174f0d5..9db67ea9b 100644 --- a/roles/openshift_logging_elasticsearch/tasks/main.yaml +++ b/roles/openshift_logging_elasticsearch/tasks/main.yaml @@ -258,7 +258,7 @@ _restart_logging_components: "{{ _restart_logging_components | default([]) + [es_component] | unique }}" - shell: > - oc get dc -l component="{{ es_component }}" -n "{{ openshift_logging_elasticsearch_namespace }}" -o name | cut -d'/' -f2 + {{ openshift_client_binary }} get dc -l component="{{ es_component }}" -n "{{ openshift_logging_elasticsearch_namespace }}" -o name | cut -d'/' -f2 register: _es_dcs - set_fact: diff --git a/roles/openshift_logging_elasticsearch/tasks/restart_cluster.yml b/roles/openshift_logging_elasticsearch/tasks/restart_cluster.yml index 879459cf6..14f2313e1 100644 --- a/roles/openshift_logging_elasticsearch/tasks/restart_cluster.yml +++ b/roles/openshift_logging_elasticsearch/tasks/restart_cluster.yml @@ -1,13 +1,13 @@ --- ## get all pods for the cluster - command: > - oc get pod -l component={{ _cluster_component }},provider=openshift -n {{ openshift_logging_elasticsearch_namespace }} -o jsonpath={.items[?(@.status.phase==\"Running\")].metadata.name} + {{ openshift_client_binary }} get pod -l component={{ _cluster_component }},provider=openshift -n {{ openshift_logging_elasticsearch_namespace }} -o jsonpath={.items[?(@.status.phase==\"Running\")].metadata.name} register: _cluster_pods ### Check for cluster state before making changes -- if its red then we don't want to continue - name: "Checking current health for {{ _es_node }} cluster" shell: > - oc exec "{{ _cluster_pods.stdout.split(' ')[0] }}" -c elasticsearch -n "{{ openshift_logging_elasticsearch_namespace }}" -- es_cluster_health + {{ openshift_client_binary }} exec "{{ _cluster_pods.stdout.split(' ')[0] }}" -c elasticsearch -n "{{ openshift_logging_elasticsearch_namespace }}" -- es_cluster_health register: _pod_status when: _cluster_pods.stdout_lines | count > 0 @@ -46,7 +46,7 @@ - name: "Disable shard balancing for logging-{{ _cluster_component }} cluster" command: > - oc exec {{ _cluster_pods.stdout.split(' ')[0] }} -c elasticsearch -n {{ openshift_logging_elasticsearch_namespace }} -- {{ __es_local_curl }} -XPUT 'https://localhost:9200/_cluster/settings' -d '{ "transient": { "cluster.routing.allocation.enable" : "none" } }' + {{ openshift_client_binary }} exec {{ _cluster_pods.stdout.split(' ')[0] }} -c elasticsearch -n {{ openshift_logging_elasticsearch_namespace }} -- {{ __es_local_curl }} -XPUT 'https://localhost:9200/_cluster/settings' -d '{ "transient": { "cluster.routing.allocation.enable" : "none" } }' register: _disable_output changed_when: "'\"acknowledged\":true' in _disable_output.stdout" when: _cluster_pods.stdout_lines | count > 0 @@ -54,7 +54,7 @@ # Flush ES - name: "Flushing for logging-{{ _cluster_component }} cluster" command: > - oc exec {{ _cluster_pods.stdout.split(' ')[0] }} -c elasticsearch -n {{ openshift_logging_elasticsearch_namespace }} -- {{ __es_local_curl }} -XPUT 'https://localhost:9200/_flush/synced' + {{ openshift_client_binary }} exec {{ _cluster_pods.stdout.split(' ')[0] }} -c elasticsearch -n {{ openshift_logging_elasticsearch_namespace }} -- {{ __es_local_curl }} -XPUT 'https://localhost:9200/_flush/synced' register: _flush_output changed_when: "'\"acknowledged\":true' in _flush_output.stdout" when: @@ -62,7 +62,7 @@ - full_restart_cluster | bool - command: > - oc get dc -l component={{ _cluster_component }},provider=openshift -n {{ openshift_logging_elasticsearch_namespace }} -o jsonpath={.items[*].metadata.name} + {{ openshift_client_binary }} get dc -l component={{ _cluster_component }},provider=openshift -n {{ openshift_logging_elasticsearch_namespace }} -o jsonpath={.items[*].metadata.name} register: _cluster_dcs ## restart all dcs for full restart @@ -86,12 +86,12 @@ ## we may need a new first pod to run against -- fetch them all again - command: > - oc get pod -l component={{ _cluster_component }},provider=openshift -n {{ openshift_logging_elasticsearch_namespace }} -o jsonpath={.items[?(@.status.phase==\"Running\")].metadata.name} + {{ openshift_client_binary }} get pod -l component={{ _cluster_component }},provider=openshift -n {{ openshift_logging_elasticsearch_namespace }} -o jsonpath={.items[?(@.status.phase==\"Running\")].metadata.name} register: _cluster_pods - name: "Enable shard balancing for logging-{{ _cluster_component }} cluster" command: > - oc exec {{ _cluster_pods.stdout.split(' ')[0] }} -c elasticsearch -n {{ openshift_logging_elasticsearch_namespace }} -- {{ __es_local_curl }} -XPUT 'https://localhost:9200/_cluster/settings' -d '{ "transient": { "cluster.routing.allocation.enable" : "all" } }' + {{ openshift_client_binary }} exec {{ _cluster_pods.stdout.split(' ')[0] }} -c elasticsearch -n {{ openshift_logging_elasticsearch_namespace }} -- {{ __es_local_curl }} -XPUT 'https://localhost:9200/_cluster/settings' -d '{ "transient": { "cluster.routing.allocation.enable" : "all" } }' register: _enable_output changed_when: "'\"acknowledged\":true' in _enable_output.stdout" diff --git a/roles/openshift_logging_elasticsearch/tasks/restart_es_node.yml b/roles/openshift_logging_elasticsearch/tasks/restart_es_node.yml index fe15e40fd..a1e172168 100644 --- a/roles/openshift_logging_elasticsearch/tasks/restart_es_node.yml +++ b/roles/openshift_logging_elasticsearch/tasks/restart_es_node.yml @@ -1,7 +1,7 @@ --- - name: "Rolling out new pod(s) for {{ _es_node }}" command: > - oc rollout latest {{ _es_node }} -n {{ openshift_logging_elasticsearch_namespace }} + {{ openshift_client_binary }} rollout latest {{ _es_node }} -n {{ openshift_logging_elasticsearch_namespace }} - name: "Waiting for {{ _es_node }} to finish scaling up" oc_obj: @@ -21,12 +21,12 @@ - name: Gettings name(s) of replica pod(s) command: > - oc get pods -l deploymentconfig={{ _es_node }} -n {{ openshift_logging_elasticsearch_namespace }} -o jsonpath={.items[*].metadata.name} + {{ openshift_client_binary }} get pods -l deploymentconfig={{ _es_node }} -n {{ openshift_logging_elasticsearch_namespace }} -o jsonpath={.items[*].metadata.name} register: _pods - name: "Waiting for ES to be ready for {{ _es_node }}" shell: > - oc exec "{{ _pod }}" -c elasticsearch -n "{{ openshift_logging_elasticsearch_namespace }}" -- es_cluster_health + {{ openshift_client_binary }} exec "{{ _pod }}" -c elasticsearch -n "{{ openshift_logging_elasticsearch_namespace }}" -- es_cluster_health with_items: "{{ _pods.stdout.split(' ') }}" loop_control: loop_var: _pod diff --git a/roles/openshift_logging_elasticsearch/vars/openshift-enterprise.yml b/roles/openshift_logging_elasticsearch/vars/openshift-enterprise.yml index 07d92896f..0cf48a66b 100644 --- a/roles/openshift_logging_elasticsearch/vars/openshift-enterprise.yml +++ b/roles/openshift_logging_elasticsearch/vars/openshift-enterprise.yml @@ -1,5 +1,5 @@ --- __openshift_logging_elasticsearch_image_prefix: "{{ openshift_logging_image_prefix | default('registry.access.redhat.com/openshift3/') }}" -__openshift_logging_elasticsearch_image_version: "{{ openshift_logging_image_version | default ('v3.7') }}" +__openshift_logging_elasticsearch_image_version: "{{ openshift_logging_image_version | default (openshift_image_tag) }}" __openshift_logging_elasticsearch_proxy_image_prefix: "{{ openshift_logging_image_prefix | default('registry.access.redhat.com/openshift3/') }}" -__openshift_logging_elasticsearch_proxy_image_version: "{{ openshift_logging_image_version | default ('v3.7') }}" +__openshift_logging_elasticsearch_proxy_image_version: "{{ openshift_logging_image_version | default (openshift_image_tag) }}" diff --git a/roles/openshift_logging_eventrouter/vars/openshift-enterprise.yml b/roles/openshift_logging_eventrouter/vars/openshift-enterprise.yml index bb7dc6455..1a6bc208e 100644 --- a/roles/openshift_logging_eventrouter/vars/openshift-enterprise.yml +++ b/roles/openshift_logging_eventrouter/vars/openshift-enterprise.yml @@ -1,3 +1,3 @@ --- __openshift_logging_eventrouter_image_prefix: "{{ openshift_logging_image_prefix | default('registry.access.redhat.com/openshift3/') }}" -__openshift_logging_eventrouter_image_version: "{{ openshift_logging_image_version | default ('v3.7') }}" +__openshift_logging_eventrouter_image_version: "{{ openshift_logging_image_version | default (openshift_image_tag) }}" diff --git a/roles/openshift_logging_fluentd/vars/openshift-enterprise.yml b/roles/openshift_logging_fluentd/vars/openshift-enterprise.yml index d0c74f1fb..b62b62a74 100644 --- a/roles/openshift_logging_fluentd/vars/openshift-enterprise.yml +++ b/roles/openshift_logging_fluentd/vars/openshift-enterprise.yml @@ -1,3 +1,3 @@ --- __openshift_logging_fluentd_image_prefix: "{{ openshift_logging_image_prefix | default('registry.access.redhat.com/openshift3/') }}" -__openshift_logging_fluentd_image_version: "{{ openshift_logging_image_version | default ('v3.7') }}" +__openshift_logging_fluentd_image_version: "{{ openshift_logging_image_version | default (openshift_image_tag) }}" diff --git a/roles/openshift_logging_kibana/vars/openshift-enterprise.yml b/roles/openshift_logging_kibana/vars/openshift-enterprise.yml index 0be2e7252..033c8ae5f 100644 --- a/roles/openshift_logging_kibana/vars/openshift-enterprise.yml +++ b/roles/openshift_logging_kibana/vars/openshift-enterprise.yml @@ -1,5 +1,5 @@ --- __openshift_logging_kibana_image_prefix: "{{ openshift_logging_image_prefix | default('registry.access.redhat.com/openshift3/') }}" -__openshift_logging_kibana_image_version: "{{ openshift_logging_image_version | default ('v3.7') }}" +__openshift_logging_kibana_image_version: "{{ openshift_logging_image_version | default (openshift_image_tag) }}" __openshift_logging_kibana_proxy_image_prefix: "{{ openshift_logging_image_prefix | default('registry.access.redhat.com/openshift3/') }}" -__openshift_logging_kibana_proxy_image_version: "{{ openshift_logging_image_version | default ('v3.7') }}" +__openshift_logging_kibana_proxy_image_version: "{{ openshift_logging_image_version | default (openshift_image_tag) }}" diff --git a/roles/openshift_logging_mux/vars/openshift-enterprise.yml b/roles/openshift_logging_mux/vars/openshift-enterprise.yml index 1e7eb9d8d..a72459748 100644 --- a/roles/openshift_logging_mux/vars/openshift-enterprise.yml +++ b/roles/openshift_logging_mux/vars/openshift-enterprise.yml @@ -1,3 +1,3 @@ --- __openshift_logging_mux_image_prefix: "{{ openshift_logging_image_prefix | default('registry.access.redhat.com/openshift3/') }}" -__openshift_logging_mux_image_version: "{{ openshift_logging_image_version | default ('v3.7') }}" +__openshift_logging_mux_image_version: "{{ openshift_logging_image_version | default (openshift_image_tag) }}" diff --git a/roles/openshift_master/tasks/system_container.yml b/roles/openshift_master/tasks/system_container.yml index dcbf7fd9f..21a29a204 100644 --- a/roles/openshift_master/tasks/system_container.yml +++ b/roles/openshift_master/tasks/system_container.yml @@ -18,6 +18,8 @@ state: latest values: - COMMAND=api + - "NODE_SERVICE={{ openshift_service_type }}-node.service" + - "DOCKER_SERVICE={{ openshift_docker_service_name }}.service" - name: Install or Update HA controller master system container oc_atomic_container: @@ -26,3 +28,5 @@ state: latest values: - COMMAND=controllers + - "NODE_SERVICE={{ openshift_service_type }}-node.service" + - "DOCKER_SERVICE={{ openshift_docker_service_name }}.service" diff --git a/roles/openshift_metrics/vars/default_images.yml b/roles/openshift_metrics/vars/default_images.yml index 8704ddfa0..e7003db76 100644 --- a/roles/openshift_metrics/vars/default_images.yml +++ b/roles/openshift_metrics/vars/default_images.yml @@ -1,3 +1,3 @@ --- __openshift_metrics_image_prefix: "docker.io/openshift/origin-" -__openshift_metrics_image_version: "latest" +__openshift_metrics_image_version: "{{ openshift_image_tag }}" diff --git a/roles/openshift_metrics/vars/openshift-enterprise.yml b/roles/openshift_metrics/vars/openshift-enterprise.yml index 5a1728de5..b3b3552b7 100644 --- a/roles/openshift_metrics/vars/openshift-enterprise.yml +++ b/roles/openshift_metrics/vars/openshift-enterprise.yml @@ -1,3 +1,3 @@ --- __openshift_metrics_image_prefix: "registry.access.redhat.com/openshift3/" -__openshift_metrics_image_version: "v3.7" +__openshift_metrics_image_version: "{{ openshift_image_tag }}" diff --git a/roles/openshift_node/tasks/node_system_container.yml b/roles/openshift_node/tasks/node_system_container.yml index 008f209d7..e1a533e8e 100644 --- a/roles/openshift_node/tasks/node_system_container.yml +++ b/roles/openshift_node/tasks/node_system_container.yml @@ -13,7 +13,7 @@ values: - "DNS_DOMAIN={{ openshift.common.dns_domain }}" - "DOCKER_SERVICE={{ openshift_docker_service_name }}.service" - - "MASTER_SERVICE={{ openshift_service_type }}.service" + - "MASTER_SERVICE={{ openshift_service_type }}-master-controllers.service" - 'ADDTL_MOUNTS={{ l_node_syscon_add_mounts2 }}' state: latest vars: diff --git a/roles/openshift_prometheus/vars/openshift-enterprise.yml b/roles/openshift_prometheus/vars/openshift-enterprise.yml index 9bb4c99bb..02319867d 100644 --- a/roles/openshift_prometheus/vars/openshift-enterprise.yml +++ b/roles/openshift_prometheus/vars/openshift-enterprise.yml @@ -6,7 +6,7 @@ l_openshift_prometheus_alertmanager_image_prefix: "{{ openshift_prometheus_alter l_openshift_prometheus_alertbuffer_image_prefix: "{{ openshift_prometheus_alertbuffer_image_prefix | default(l_openshift_prometheus_image_prefix) }}" # image version defaults -l_openshift_prometheus_image_version: "{{ openshift_prometheus_image_version | default('v3.7') }}" -l_openshift_prometheus_proxy_image_version: "{{ openshift_prometheus_proxy_image_version | default('v3.7') }}" -l_openshift_prometheus_alertmanager_image_version: "{{ openshift_prometheus_alertmanager_image_version | default('v3.7') }}" -l_openshift_prometheus_alertbuffer_image_version: "{{ openshift_prometheus_alertbuffer_image_version | default('v3.7') }}" +l_openshift_prometheus_image_version: "{{ openshift_prometheus_image_version | default(openshift_image_tag) }}" +l_openshift_prometheus_proxy_image_version: "{{ openshift_prometheus_proxy_image_version | default(openshift_image_tag) }}" +l_openshift_prometheus_alertmanager_image_version: "{{ openshift_prometheus_alertmanager_image_version | default(openshift_image_tag) }}" +l_openshift_prometheus_alertbuffer_image_version: "{{ openshift_prometheus_alertbuffer_image_version | default(openshift_image_tag) }}" diff --git a/roles/openshift_service_catalog/vars/default_images.yml b/roles/openshift_service_catalog/vars/default_images.yml index 6fb9d1b86..b3bb16f18 100644 --- a/roles/openshift_service_catalog/vars/default_images.yml +++ b/roles/openshift_service_catalog/vars/default_images.yml @@ -1,3 +1,3 @@ --- __openshift_service_catalog_image_prefix: "docker.io/openshift/origin-" -__openshift_service_catalog_image_version: "latest" +__openshift_service_catalog_image_version: "{{ openshift_service_catalog_image_version | default(openshift_image_tag) }}" diff --git a/roles/openshift_service_catalog/vars/openshift-enterprise.yml b/roles/openshift_service_catalog/vars/openshift-enterprise.yml index cab9cc7d8..7f56292a2 100644 --- a/roles/openshift_service_catalog/vars/openshift-enterprise.yml +++ b/roles/openshift_service_catalog/vars/openshift-enterprise.yml @@ -1,3 +1,3 @@ --- __openshift_service_catalog_image_prefix: "registry.access.redhat.com/openshift3/ose-" -__openshift_service_catalog_image_version: "v3.7" +__openshift_service_catalog_image_version: "{{ openshift_service_catalog_image_version | default(openshift_image_tag) }}" diff --git a/roles/openshift_storage_glusterfs/tasks/glusterfs_common.yml b/roles/openshift_storage_glusterfs/tasks/glusterfs_common.yml index e6e261b52..4928e86e5 100644 --- a/roles/openshift_storage_glusterfs/tasks/glusterfs_common.yml +++ b/roles/openshift_storage_glusterfs/tasks/glusterfs_common.yml @@ -330,6 +330,25 @@ - path: key data: "{{ glusterfs_heketi_admin_key }}" when: glusterfs_heketi_admin_key is defined + + - name: Get heketi route + oc_obj: + namespace: "{{ glusterfs_namespace }}" + kind: route + state: list + name: "heketi-{{ glusterfs_name }}" + register: heketi_route + when: + - glusterfs_heketi_is_native + - glusterfs_heketi_route is not defined + + - name: Determine StorageClass heketi URL + set_fact: + glusterfs_heketi_route: "{{ heketi_route.results.results[0]['spec']['host'] }}" + when: + - glusterfs_heketi_is_native + - glusterfs_heketi_route is not defined + - name: Generate Gluster Block StorageClass file template: src: "{{ openshift.common.examples_content_version }}/gluster-block-storageclass.yml.j2" diff --git a/roles/openshift_web_console/tasks/install.yml b/roles/openshift_web_console/tasks/install.yml index f79a05c94..13726da45 100644 --- a/roles/openshift_web_console/tasks/install.yml +++ b/roles/openshift_web_console/tasks/install.yml @@ -20,6 +20,7 @@ state: present node_selector: - "" + register: create_console_project - name: Make temp directory for web console templates command: mktemp -d /tmp/console-ansible-XXXXXX @@ -144,6 +145,16 @@ --config={{ mktemp.stdout }}/admin.kubeconfig | {{ openshift_client_binary }} apply --config={{ mktemp.stdout }}/admin.kubeconfig -f - +# Wait to give the rollout time to start before verifying that the console is +# running. Unfortunately, we can't check if the deployment revision changed +# because it's possible applying the template did not result in any changes to +# the pod template spec, which would skip a new revision. +- name: Pause for the web console deployment to start + pause: + seconds: 30 + # Skip if the project didn't exist since there was no previous deployment. + when: not create_console_project.changed + - name: Verify that the web console is running command: > curl -k https://webconsole.openshift-web-console.svc/healthz diff --git a/roles/openshift_web_console/vars/default_images.yml b/roles/openshift_web_console/vars/default_images.yml index 42d331ac5..0bd4e981d 100644 --- a/roles/openshift_web_console/vars/default_images.yml +++ b/roles/openshift_web_console/vars/default_images.yml @@ -1,4 +1,4 @@ --- __openshift_web_console_prefix: "docker.io/openshift/origin-" -__openshift_web_console_version: "latest" +__openshift_web_console_version: "{{ openshift_image_tag }}" __openshift_web_console_image_name: "web-console" diff --git a/roles/openshift_web_console/vars/openshift-enterprise.yml b/roles/openshift_web_console/vars/openshift-enterprise.yml index 375c22067..fd5e4e9a0 100644 --- a/roles/openshift_web_console/vars/openshift-enterprise.yml +++ b/roles/openshift_web_console/vars/openshift-enterprise.yml @@ -1,4 +1,4 @@ --- __openshift_web_console_prefix: "registry.access.redhat.com/openshift3/ose-" -__openshift_web_console_version: "v3.9" +__openshift_web_console_version: "{{ openshift_image_tag }}" __openshift_web_console_image_name: "web-console" diff --git a/roles/template_service_broker/vars/default_images.yml b/roles/template_service_broker/vars/default_images.yml index dc164a4db..b99f52bbb 100644 --- a/roles/template_service_broker/vars/default_images.yml +++ b/roles/template_service_broker/vars/default_images.yml @@ -1,4 +1,4 @@ --- __template_service_broker_prefix: "docker.io/openshift/origin-" -__template_service_broker_version: "latest" +__template_service_broker_version: "{{ openshift_image_tag }}" __template_service_broker_image_name: "template-service-broker" diff --git a/roles/template_service_broker/vars/openshift-enterprise.yml b/roles/template_service_broker/vars/openshift-enterprise.yml index b65b97691..4bc3795bd 100644 --- a/roles/template_service_broker/vars/openshift-enterprise.yml +++ b/roles/template_service_broker/vars/openshift-enterprise.yml @@ -1,4 +1,4 @@ --- __template_service_broker_prefix: "registry.access.redhat.com/openshift3/ose-" -__template_service_broker_version: "v3.7" +__template_service_broker_version: "{{ openshift_image_tag }}" __template_service_broker_image_name: "template-service-broker" |