{
    "apiVersion": "template.openshift.io/v1",
    "kind": "Template",
    "labels": {
        "app": "windup-web-console",
        "template": "windup-web-console",
        "xpaas": "1.3.2"
    },
    "message": "Windup server has been installed. The username/password for accessing the PostgreSQL database \"${DB_DATABASE}\" is ${DB_USERNAME}/${DB_PASSWORD}. Please be sure to create the \"${JGROUPS_ENCRYPT_SECRET}\" containing the ${JGROUPS_ENCRYPT_KEYSTORE} file used for securing JGroups communications.",
    "metadata": {
        "annotations": {
            "description": "Windup migration tool Web Console template",
            "iconClass": "fas fa-crow",
            "openshift.io/display-name": "Windup",
            "openshift.io/documentation-url": "https://windup.github.io",
            "openshift.io/provider-display-name": "Windup",
            "tags": "wildfly,postgresql,javaee,java,database,jboss,xpaas",
            "version": "1.3.2"
        },
        "name": "windup-web-console"
    },
    "objects": [
        {
            "apiVersion": "v1",
            "kind": "Service",
            "metadata": {
                "annotations": {
                    "description": "The web server's http port.",
                    "service.alpha.openshift.io/dependencies": "[{\"name\": \"${APPLICATION_NAME}-postgresql\", \"kind\": \"Service\"}]"
                },
                "labels": {
                    "app": "${APPLICATION_NAME}-http",
                    "application": "${APPLICATION_NAME}"
                },
                "name": "${APPLICATION_NAME}"
            },
            "spec": {
                "ports": [
                    {
                        "port": 8080,
                        "targetPort": 8080
                    }
                ],
                "selector": {
                    "deploymentConfig": "${APPLICATION_NAME}"
                }
            }
        },
        {
            "apiVersion": "route.openshift.io/v1",
            "kind": "Route",
            "metadata": {
                "annotations": {
                    "console.alpha.openshift.io/overview-app-route": "true",
                    "description": "Route for application's http service."
                },
                "labels": {
                    "application": "${APPLICATION_NAME}"
                },
                "name": "${APPLICATION_NAME}"
            },
            "spec": {
                "host": "${HOSTNAME_HTTP}",
                "to": {
                    "name": "${APPLICATION_NAME}"
                }
            }
        },
        {
            "apiVersion": "route.openshift.io/v1",
            "kind": "Route",
            "metadata": {
                "annotations": {
                    "description": "Route for application's https service."
                },
                "labels": {
                    "application": "${APPLICATION_NAME}"
                },
                "name": "secure-${APPLICATION_NAME}"
            },
            "spec": {
                "host": "${HOSTNAME_HTTP}",
                "tls": {
                    "termination": "edge"
                },
                "to": {
                    "name": "${APPLICATION_NAME}"
                }
            }
        },
        {
            "apiVersion": "apps.openshift.io/v1",
            "kind": "DeploymentConfig",
            "metadata": {
                "labels": {
                    "application": "${APPLICATION_NAME}"
                },
                "name": "${APPLICATION_NAME}"
            },
            "spec": {
                "replicas": 1,
                "selector": {
                    "deploymentConfig": "${APPLICATION_NAME}"
                },
                "strategy": {
                    "type": "Recreate"
                },
                "template": {
                    "metadata": {
                        "labels": {
                            "application": "${APPLICATION_NAME}",
                            "deploymentConfig": "${APPLICATION_NAME}"
                        },
                        "name": "${APPLICATION_NAME}"
                    },
                    "spec": {
                        "containers": [
                            {
                                "env": [
                                    {
                                        "name": "IS_MASTER",
                                        "value": "true"
                                    },
                                    {
                                        "name": "MESSAGING_SERIALIZER",
                                        "value": "${MESSAGING_SERIALIZER}"
                                    },
                                    {
                                        "name": "DB_SERVICE_PREFIX_MAPPING",
                                        "value": "${APPLICATION_NAME}-postgresql=DB"
                                    },
                                    {
                                        "name": "DB_JNDI",
                                        "value": "${DB_JNDI}"
                                    },
                                    {
                                        "name": "DB_USERNAME",
                                        "value": "${DB_USERNAME}"
                                    },
                                    {
                                        "name": "DB_PASSWORD",
                                        "value": "${DB_PASSWORD}"
                                    },
                                    {
                                        "name": "DB_DATABASE",
                                        "value": "${DB_DATABASE}"
                                    },
                                    {
                                        "name": "TX_DATABASE_PREFIX_MAPPING",
                                        "value": "${APPLICATION_NAME}-postgresql=DB"
                                    },
                                    {
                                        "name": "DB_MIN_POOL_SIZE",
                                        "value": "${DB_MIN_POOL_SIZE}"
                                    },
                                    {
                                        "name": "DB_MAX_POOL_SIZE",
                                        "value": "${DB_MAX_POOL_SIZE}"
                                    },
                                    {
                                        "name": "DB_TX_ISOLATION",
                                        "value": "${DB_TX_ISOLATION}"
                                    },
                                    {
                                        "name": "OPENSHIFT_KUBE_PING_LABELS",
                                        "value": "application=${APPLICATION_NAME}"
                                    },
                                    {
                                        "name": "OPENSHIFT_KUBE_PING_NAMESPACE",
                                        "valueFrom": {
                                            "fieldRef": {
                                                "fieldPath": "metadata.namespace"
                                            }
                                        }
                                    },
                                    {
                                        "name": "HTTPS_KEYSTORE_DIR",
                                        "value": "/etc/wildfly-secret-volume"
                                    },
                                    {
                                        "name": "MQ_CLUSTER_PASSWORD",
                                        "value": "${MQ_CLUSTER_PASSWORD}"
                                    },
                                    {
                                        "name": "MQ_QUEUES",
                                        "value": "${MQ_QUEUES}"
                                    },
                                    {
                                        "name": "MQ_TOPICS",
                                        "value": "${MQ_TOPICS}"
                                    },
                                    {
                                        "name": "JGROUPS_ENCRYPT_SECRET",
                                        "value": "${JGROUPS_ENCRYPT_SECRET}"
                                    },
                                    {
                                        "name": "JGROUPS_ENCRYPT_KEYSTORE_DIR",
                                        "value": "/etc/jgroups-encrypt-secret-volume"
                                    },
                                    {
                                        "name": "JGROUPS_ENCRYPT_KEYSTORE",
                                        "value": "${JGROUPS_ENCRYPT_KEYSTORE}"
                                    },
                                    {
                                        "name": "JGROUPS_ENCRYPT_NAME",
                                        "value": "${JGROUPS_ENCRYPT_NAME}"
                                    },
                                    {
                                        "name": "JGROUPS_ENCRYPT_PASSWORD",
                                        "value": "${JGROUPS_ENCRYPT_PASSWORD}"
                                    },
                                    {
                                        "name": "JGROUPS_CLUSTER_PASSWORD",
                                        "value": "${JGROUPS_CLUSTER_PASSWORD}"
                                    },
                                    {
                                        "name": "AUTO_DEPLOY_EXPLODED",
                                        "value": "${AUTO_DEPLOY_EXPLODED}"
                                    },
                                    {
                                        "name": "DEFAULT_JOB_REPOSITORY",
                                        "value": "${APPLICATION_NAME}-postgresql"
                                    },
                                    {
                                        "name": "TIMER_SERVICE_DATA_STORE",
                                        "value": "${APPLICATION_NAME}-postgresql"
                                    },
                                    {
                                        "name": "SSO_AUTH_SERVER_URL",
                                        "value": "${SSO_AUTH_SERVER_URL}"
                                    },
                                    {
                                        "name": "SSO_REALM",
                                        "value": "${SSO_REALM}"
                                    },
                                    {
                                        "name": "SSO_SSL_REQUIRED",
                                        "value": "${SSO_SSL_REQUIRED}"
                                    },
                                    {
                                        "name": "SSO_CLIENT_ID",
                                        "value": "${SSO_CLIENT_ID}"
                                    },
                                    {
                                        "name": "SSO_BEARER_ONLY",
                                        "value": "${SSO_BEARER_ONLY}"
                                    },
                                    {
                                        "name": "SSO_SAML_KEYSTORE_SECRET",
                                        "value": "${SSO_SAML_KEYSTORE_SECRET}"
                                    },
                                    {
                                        "name": "SSO_SAML_KEYSTORE",
                                        "value": "${SSO_SAML_KEYSTORE}"
                                    },
                                    {
                                        "name": "SSO_SAML_KEYSTORE_DIR",
                                        "value": "/etc/sso-saml-secret-volume"
                                    },
                                    {
                                        "name": "SSO_SAML_CERTIFICATE_NAME",
                                        "value": "${SSO_SAML_CERTIFICATE_NAME}"
                                    },
                                    {
                                        "name": "SSO_SAML_KEYSTORE_PASSWORD",
                                        "value": "${SSO_SAML_KEYSTORE_PASSWORD}"
                                    },
                                    {
                                        "name": "SSO_SECRET",
                                        "value": "${SSO_SECRET}"
                                    },
                                    {
                                        "name": "SSO_ENABLE_CORS",
                                        "value": "${SSO_ENABLE_CORS}"
                                    },
                                    {
                                        "name": "SSO_SAML_LOGOUT_PAGE",
                                        "value": "${SSO_SAML_LOGOUT_PAGE}"
                                    },
                                    {
                                        "name": "SSO_DISABLE_SSL_CERTIFICATE_VALIDATION",
                                        "value": "${SSO_DISABLE_SSL_CERTIFICATE_VALIDATION}"
                                    },
                                    {
                                        "name": "SSO_TRUSTSTORE",
                                        "value": "${SSO_TRUSTSTORE}"
                                    },
                                    {
                                        "name": "SSO_TRUSTSTORE_DIR",
                                        "value": "/etc/sso-secret-volume"
                                    },
                                    {
                                        "name": "SSO_TRUSTSTORE_PASSWORD",
                                        "value": "${SSO_TRUSTSTORE_PASSWORD}"
                                    },
                                    {
                                        "name": "GC_MAX_METASPACE_SIZE",
                                        "value": "512"
                                    },
                                    {
                                        "name": "MAX_POST_SIZE",
                                        "value": "${MAX_POST_SIZE}"
                                    },
                                    {
                                        "name": "SSO_FORCE_LEGACY_SECURITY",
                                        "value": "false"
                                    }
                                ],
                                "image": "quay.io/${DOCKER_IMAGES_USER}/windup-web-openshift:${DOCKER_IMAGES_TAG}",
                                "imagePullPolicy": "Always",
                                "lifecycle": {
                                    "preStop": {
                                        "exec": {
                                            "command": [
                                                "${JBOSS_HOME}/bin/jboss-cli.sh",
                                                "-c",
                                                ":shutdown(timeout=60)"
                                            ]
                                        }
                                    }
                                },
                                "livenessProbe": {
                                    "exec": {
                                        "command": [
                                            "/bin/bash",
                                            "-c",
                                            "${JBOSS_HOME}/bin/jboss-cli.sh --connect --commands='/core-service=management:read-boot-errors()' | grep '\"result\" => \\[]' && ${JBOSS_HOME}/bin/jboss-cli.sh --connect --commands=ls | grep 'server-state=running'"
                                        ]
                                    },
                                    "failureThreshold": 3,
                                    "initialDelaySeconds": 120,
                                    "successThreshold": 1,
                                    "timeoutSeconds": 10
                                },
                                "name": "${APPLICATION_NAME}",
                                "ports": [
                                    {
                                        "containerPort": 8778,
                                        "name": "jolokia",
                                        "protocol": "TCP"
                                    },
                                    {
                                        "containerPort": 8080,
                                        "name": "http",
                                        "protocol": "TCP"
                                    },
                                    {
                                        "containerPort": 8888,
                                        "name": "ping",
                                        "protocol": "TCP"
                                    }
                                ],
                                "readinessProbe": {
                                    "exec": {
                                        "command": [
                                            "/bin/bash",
                                            "-c",
                                            "${JBOSS_HOME}/bin/jboss-cli.sh --connect --commands='/core-service=management:read-boot-errors()' | grep '\"result\" => \\[]' && ${JBOSS_HOME}/bin/jboss-cli.sh --connect --commands='ls deployment' | grep 'api.war'"
                                        ]
                                    },
                                    "failureThreshold": 3,
                                    "initialDelaySeconds": 120,
                                    "successThreshold": 1,
                                    "timeoutSeconds": 10
                                },
                                "resources": {
                                    "limits": {
                                        "cpu": "${WEB_CONSOLE_REQUESTED_CPU}",
                                        "memory": "${WEB_CONSOLE_REQUESTED_MEMORY}"
                                    },
                                    "requests": {
                                        "cpu": "${WEB_CONSOLE_REQUESTED_CPU}",
                                        "memory": "${WEB_CONSOLE_REQUESTED_MEMORY}"
                                    }
                                },
                                "volumeMounts": [
                                    {
                                        "mountPath": "/opt/windup/data/windup",
                                        "name": "${APPLICATION_NAME}-windup-web-pvol",
                                        "readOnly": false
                                    },
                                    {
                                        "mountPath": "/opt/windup/data",
                                        "name": "${APPLICATION_NAME}-windup-web-pvol-data",
                                        "readOnly": false
                                    }
                                ]
                            }
                        ],
                        "terminationGracePeriodSeconds": 75,
                        "volumes": [
                            {
                                "name": "${APPLICATION_NAME}-windup-web-pvol",
                                "persistentVolumeClaim": {
                                    "claimName": "${APPLICATION_NAME}-windup-web-claim"
                                }
                            },
                            {
                                "emptyDir": {
                                    
                                },
                                "name": "${APPLICATION_NAME}-windup-web-pvol-data"
                            }
                        ]
                    }
                },
                "triggers": [
                    {
                        "type": "ConfigChange"
                    }
                ]
            }
        },
        {
            "apiVersion": "apps.openshift.io/v1",
            "kind": "DeploymentConfig",
            "metadata": {
                "labels": {
                    "application": "${APPLICATION_NAME}-executor"
                },
                "name": "${APPLICATION_NAME}-executor"
            },
            "spec": {
                "replicas": 1,
                "selector": {
                    "deploymentConfig": "${APPLICATION_NAME}-executor"
                },
                "strategy": {
                    "type": "Recreate"
                },
                "template": {
                    "metadata": {
                        "labels": {
                            "application": "${APPLICATION_NAME}-executor",
                            "deploymentConfig": "${APPLICATION_NAME}-executor"
                        },
                        "name": "${APPLICATION_NAME}-executor"
                    },
                    "spec": {
                        "containers": [
                            {
                                "env": [
                                    {
                                        "name": "IS_MASTER",
                                        "value": "false"
                                    },
                                    {
                                        "name": "MESSAGING_SERIALIZER",
                                        "value": "${MESSAGING_SERIALIZER}"
                                    },
                                    {
                                        "name": "MESSAGING_USER",
                                        "value": "jms-user"
                                    },
                                    {
                                        "name": "MESSAGING_PASSWORD",
                                        "value": "gthudfal"
                                    },
                                    {
                                        "name": "MESSAGING_HOST_VAR",
                                        "value": "${APPLICATION_NAME}_SERVICE_HOST"
                                    }
                                ],
                                "image": "quay.io/${DOCKER_IMAGES_USER}/windup-web-openshift-messaging-executor:${DOCKER_IMAGES_TAG}",
                                "imagePullPolicy": "Always",
                                "lifecycle": {
                                    "preStop": {
                                        "exec": {
                                            "command": [
                                                "/opt/windup-cli/bin/stop.sh"
                                            ]
                                        }
                                    }
                                },
                                "livenessProbe": {
                                    "exec": {
                                        "command": [
                                            "/bin/bash",
                                            "-c",
                                            "/opt/windup-cli/bin/livenessProbe.sh"
                                        ]
                                    },
                                    "failureThreshold": 3,
                                    "initialDelaySeconds": 120,
                                    "successThreshold": 1,
                                    "timeoutSeconds": 10
                                },
                                "name": "${APPLICATION_NAME}-executor",
                                "ports": [
                                    
                                ],
                                "readinessProbe": {
                                    "exec": {
                                        "command": [
                                            "/bin/bash",
                                            "-c",
                                            "/opt/windup-cli/bin/livenessProbe.sh"
                                        ]
                                    },
                                    "failureThreshold": 3,
                                    "initialDelaySeconds": 120,
                                    "successThreshold": 1,
                                    "timeoutSeconds": 10
                                },
                                "resources": {
                                    "limits": {
                                        "cpu": "${EXECUTOR_REQUESTED_CPU}",
                                        "memory": "${EXECUTOR_REQUESTED_MEMORY}"
                                    },
                                    "requests": {
                                        "cpu": "${EXECUTOR_REQUESTED_CPU}",
                                        "memory": "${EXECUTOR_REQUESTED_MEMORY}"
                                    }
                                },
                                "volumeMounts": [
                                    {
                                        "mountPath": "/opt/windup/data",
                                        "name": "${APPLICATION_NAME}-windup-web-executor-volume",
                                        "readOnly": false
                                    }
                                ]
                            }
                        ],
                        "terminationGracePeriodSeconds": 75,
                        "volumes": [
                            {
                                "emptyDir": {
                                    
                                },
                                "name": "${APPLICATION_NAME}-windup-web-executor-volume"
                            }
                        ]
                    }
                },
                "triggers": [
                    {
                        "type": "ConfigChange"
                    }
                ]
            }
        },
        {
            "apiVersion": "apps.openshift.io/v1",
            "kind": "DeploymentConfig",
            "metadata": {
                "labels": {
                    "application": "${APPLICATION_NAME}"
                },
                "name": "${APPLICATION_NAME}-postgresql"
            },
            "spec": {
                "replicas": 1,
                "selector": {
                    "deploymentConfig": "${APPLICATION_NAME}-postgresql"
                },
                "strategy": {
                    "type": "Recreate"
                },
                "template": {
                    "metadata": {
                        "labels": {
                            "application": "${APPLICATION_NAME}",
                            "deploymentConfig": "${APPLICATION_NAME}-postgresql"
                        },
                        "name": "${APPLICATION_NAME}-postgresql"
                    },
                    "spec": {
                        "containers": [
                            {
                                "env": [
                                    {
                                        "name": "POSTGRESQL_USER",
                                        "value": "${DB_USERNAME}"
                                    },
                                    {
                                        "name": "POSTGRESQL_PASSWORD",
                                        "value": "${DB_PASSWORD}"
                                    },
                                    {
                                        "name": "POSTGRESQL_DATABASE",
                                        "value": "${DB_DATABASE}"
                                    },
                                    {
                                        "name": "POSTGRESQL_MAX_CONNECTIONS",
                                        "value": "${POSTGRESQL_MAX_CONNECTIONS}"
                                    },
                                    {
                                        "name": "POSTGRESQL_MAX_PREPARED_TRANSACTIONS",
                                        "value": "${POSTGRESQL_MAX_CONNECTIONS}"
                                    },
                                    {
                                        "name": "POSTGRESQL_SHARED_BUFFERS",
                                        "value": "${POSTGRESQL_SHARED_BUFFERS}"
                                    }
                                ],
                                "image": "postgresql",
                                "imagePullPolicy": "Always",
                                "name": "${APPLICATION_NAME}-postgresql",
                                "ports": [
                                    {
                                        "containerPort": 5432,
                                        "protocol": "TCP"
                                    }
                                ],
                                "volumeMounts": [
                                    {
                                        "mountPath": "/var/lib/pgsql/data",
                                        "name": "${APPLICATION_NAME}-postgresql-pvol"
                                    }
                                ]
                            }
                        ],
                        "terminationGracePeriodSeconds": 60,
                        "volumes": [
                            {
                                "name": "${APPLICATION_NAME}-postgresql-pvol",
                                "persistentVolumeClaim": {
                                    "claimName": "${APPLICATION_NAME}-postgresql-claim"
                                }
                            }
                        ]
                    }
                },
                "triggers": [
                    {
                        "imageChangeParams": {
                            "automatic": true,
                            "containerNames": [
                                "${APPLICATION_NAME}-postgresql"
                            ],
                            "from": {
                                "kind": "ImageStreamTag",
                                "name": "postgresql:latest",
                                "namespace": "${IMAGE_STREAM_NAMESPACE}"
                            }
                        },
                        "type": "ImageChange"
                    },
                    {
                        "type": "ConfigChange"
                    }
                ]
            }
        },
        {
            "apiVersion": "v1",
            "kind": "Service",
            "metadata": {
                "annotations": {
                    "description": "WINDUP Master AMQ port."
                },
                "labels": {
                    "application": "${APPLICATION_NAME}-amq"
                },
                "name": "${APPLICATION_NAME}-amq"
            },
            "spec": {
                "ports": [
                    {
                        "port": 61616,
                        "targetPort": 61616
                    }
                ],
                "selector": {
                    "deploymentConfig": "${APPLICATION_NAME}"
                }
            }
        },
        {
            "apiVersion": "v1",
            "kind": "Service",
            "metadata": {
                "annotations": {
                    "description": "The database server's port."
                },
                "labels": {
                    "application": "${APPLICATION_NAME}"
                },
                "name": "${APPLICATION_NAME}-postgresql"
            },
            "spec": {
                "ports": [
                    {
                        "port": 5432,
                        "targetPort": 5432
                    }
                ],
                "selector": {
                    "deploymentConfig": "${APPLICATION_NAME}-postgresql"
                }
            }
        },
        {
            "apiVersion": "v1",
            "kind": "PersistentVolumeClaim",
            "metadata": {
                "labels": {
                    "application": "${APPLICATION_NAME}"
                },
                "name": "${APPLICATION_NAME}-postgresql-claim"
            },
            "spec": {
                "accessModes": [
                    "ReadWriteOnce"
                ],
                "resources": {
                    "requests": {
                        "storage": "${VOLUME_CAPACITY}"
                    }
                }
            }
        },
        {
            "apiVersion": "v1",
            "kind": "PersistentVolumeClaim",
            "metadata": {
                "labels": {
                    "application": "${APPLICATION_NAME}"
                },
                "name": "${APPLICATION_NAME}-windup-web-claim"
            },
            "spec": {
                "accessModes": [
                    "ReadWriteOnce"
                ],
                "resources": {
                    "requests": {
                        "storage": "${WINDUP_VOLUME_CAPACITY}"
                    }
                }
            }
        }
    ],
    "parameters": [
        {
            "description": "The name for the application.",
            "displayName": "Application Name",
            "name": "APPLICATION_NAME",
            "required": true,
            "value": "windup-web-console"
        },
        {
            "description": "The number of CPU cores to request for the Web Console.",
            "displayName": "Web Console Requested CPU",
            "name": "WEB_CONSOLE_REQUESTED_CPU",
            "required": true,
            "value": "4"
        },
        {
            "description": "The amount of memory to request (eg, 4Gi) for the Web Console.",
            "displayName": "Web Console Requested Memory",
            "name": "WEB_CONSOLE_REQUESTED_MEMORY",
            "required": true,
            "value": "4Gi"
        },
        {
            "description": "The number of CPU cores to request for the Executor.",
            "displayName": "Executor Requested CPU",
            "name": "EXECUTOR_REQUESTED_CPU",
            "required": true,
            "value": "4"
        },
        {
            "description": "The amount of memory to request (eg, 4Gi) for the Executor.",
            "displayName": "Executor Requested Memory",
            "name": "EXECUTOR_REQUESTED_MEMORY",
            "required": true,
            "value": "4Gi"
        },
        {
            "description": "The value determines the approach used for transferring data between the UI components and the analysis engine.",
            "displayName": "Serialization Method",
            "name": "MESSAGING_SERIALIZER",
            "required": true,
            "value": "http.post.serializer"
        },
        {
            "description": "Size of persistent storage for WINDUP volume.",
            "displayName": "WINDUP Volume Capacity",
            "name": "WINDUP_VOLUME_CAPACITY",
            "required": true,
            "value": "20G"
        },
        {
            "description": "Custom hostname for http service route.  Leave blank for default hostname, e.g.: <application-name>-<project>.<default-domain-suffix>",
            "displayName": "Custom http Route Hostname",
            "name": "HOSTNAME_HTTP",
            "required": false,
            "value": ""
        },
        {
            "description": "Database JNDI name used by application to resolve the datasource, e.g. java:/jboss/datasources/postgresql",
            "displayName": "Database JNDI Name",
            "name": "DB_JNDI",
            "required": false,
            "value": "java:jboss/datasources/WindupServicesDS"
        },
        {
            "description": "Database name",
            "displayName": "Database Name",
            "name": "DB_DATABASE",
            "required": true,
            "value": "windup"
        },
        {
            "description": "Size of persistent storage for database volume.",
            "displayName": "Database Volume Capacity",
            "name": "VOLUME_CAPACITY",
            "required": true,
            "value": "20G"
        },
        {
            "description": "Queue names",
            "displayName": "Queues",
            "name": "MQ_QUEUES",
            "required": false,
            "value": ""
        },
        {
            "description": "Topic names",
            "displayName": "Topics",
            "name": "MQ_TOPICS",
            "required": false,
            "value": ""
        },
        {
            "description": "Sets xa-pool/min-pool-size for the configured datasource.",
            "displayName": "Datasource Minimum Pool Size",
            "name": "DB_MIN_POOL_SIZE",
            "required": false
        },
        {
            "description": "Sets xa-pool/max-pool-size for the configured datasource.",
            "displayName": "Datasource Maximum Pool Size",
            "name": "DB_MAX_POOL_SIZE",
            "required": false
        },
        {
            "description": "Sets transaction-isolation for the configured datasource.",
            "displayName": "Datasource Transaction Isolation",
            "name": "DB_TX_ISOLATION",
            "required": false
        },
        {
            "description": "The maximum number of client connections allowed. This also sets the maximum number of prepared transactions.",
            "displayName": "PostgreSQL Maximum number of connections",
            "name": "POSTGRESQL_MAX_CONNECTIONS",
            "required": false,
            "value": "200"
        },
        {
            "description": "Configures how much memory is dedicated to PostgreSQL for caching data.",
            "displayName": "PostgreSQL Shared Buffers",
            "name": "POSTGRESQL_SHARED_BUFFERS",
            "required": false
        },
        {
            "description": "A-MQ cluster admin password",
            "displayName": "A-MQ cluster password",
            "from": "[a-zA-Z0-9]{8}",
            "generate": "expression",
            "name": "MQ_CLUSTER_PASSWORD",
            "required": true
        },
        {
            "description": "Database user name",
            "displayName": "Database Username",
            "from": "user[a-zA-Z0-9]{3}",
            "generate": "expression",
            "name": "DB_USERNAME",
            "required": true
        },
        {
            "description": "Database user password",
            "displayName": "Database Password",
            "from": "[a-zA-Z0-9]{8}",
            "generate": "expression",
            "name": "DB_PASSWORD",
            "required": true
        },
        {
            "description": "GitHub trigger secret",
            "displayName": "Github Webhook Secret",
            "from": "[a-zA-Z0-9]{8}",
            "generate": "expression",
            "name": "GITHUB_WEBHOOK_SECRET",
            "required": true
        },
        {
            "description": "Generic build trigger secret",
            "displayName": "Generic Webhook Secret",
            "from": "[a-zA-Z0-9]{8}",
            "generate": "expression",
            "name": "GENERIC_WEBHOOK_SECRET",
            "required": true
        },
        {
            "description": "Namespace in which the ImageStreams for Red Hat Middleware images are installed. These ImageStreams are normally installed in the openshift namespace. You should only need to modify this if you've installed the ImageStreams in a different namespace/project.",
            "displayName": "ImageStream Namespace",
            "name": "IMAGE_STREAM_NAMESPACE",
            "required": true,
            "value": "openshift"
        },
        {
            "description": "The name of the secret containing the keystore file",
            "displayName": "JGroups Secret Name",
            "name": "JGROUPS_ENCRYPT_SECRET",
            "required": false,
            "value": "wildfly-app-secret"
        },
        {
            "description": "The name of the keystore file within the secret",
            "displayName": "JGroups Keystore Filename",
            "name": "JGROUPS_ENCRYPT_KEYSTORE",
            "required": false,
            "value": "jgroups.jceks"
        },
        {
            "description": "The name associated with the server certificate",
            "displayName": "JGroups Certificate Name",
            "name": "JGROUPS_ENCRYPT_NAME",
            "required": false,
            "value": ""
        },
        {
            "description": "The password for the keystore and certificate",
            "displayName": "JGroups Keystore Password",
            "name": "JGROUPS_ENCRYPT_PASSWORD",
            "required": false,
            "value": ""
        },
        {
            "description": "JGroups cluster password",
            "displayName": "JGroups Cluster Password",
            "from": "[a-zA-Z0-9]{8}",
            "generate": "expression",
            "name": "JGROUPS_CLUSTER_PASSWORD",
            "required": true
        },
        {
            "description": "Controls whether exploded deployment content should be automatically deployed",
            "displayName": "Deploy Exploded Archives",
            "name": "AUTO_DEPLOY_EXPLODED",
            "required": false,
            "value": "false"
        },
        {
            "description": "The URL for the SSO server (e.g. https://secure-sso-myproject.example.com/auth).  This is the URL through which the user will be redirected when a login or token is required by the application.",
            "displayName": "URL for SSO",
            "name": "SSO_AUTH_SERVER_URL",
            "required": false,
            "value": ""
        },
        {
            "description": "The SSO realm to which the application client(s) should be associated (e.g. demo).",
            "displayName": "SSO Realm",
            "name": "SSO_REALM",
            "required": false,
            "value": ""
        },
        {
            "description": "The SSO SSL Required behaviour. E.g. EXTERNAL, NONE, ALL",
            "displayName": "SSO SSL Required",
            "name": "SSO_SSL_REQUIRED",
            "required": false,
            "value": "EXTERNAL"
        },
        {
            "description": "The SSO Client Id.",
            "displayName": "SSO Client ID",
            "name": "SSO_CLIENT_ID",
            "required": false,
            "value": ""
        },
        {
            "description": "SSO Client Access Type",
            "displayName": "SSO Bearer Only?",
            "name": "SSO_BEARER_ONLY",
            "required": false,
            "value": ""
        },
        {
            "description": "The name of the secret containing the keystore file",
            "displayName": "SSO SAML Keystore Secret",
            "name": "SSO_SAML_KEYSTORE_SECRET",
            "required": false,
            "value": "wildfly-app-secret"
        },
        {
            "description": "The name of the keystore file within the secret",
            "displayName": "SSO SAML Keystore",
            "name": "SSO_SAML_KEYSTORE",
            "required": false,
            "value": "keystore.jks"
        },
        {
            "description": "The name associated with the server certificate",
            "displayName": "SSO SAML Certificate Name",
            "name": "SSO_SAML_CERTIFICATE_NAME",
            "required": false,
            "value": "jboss"
        },
        {
            "description": "The password for the keystore and certificate",
            "displayName": "SSO SAML Keystore Password",
            "name": "SSO_SAML_KEYSTORE_PASSWORD",
            "required": false,
            "value": "mykeystorepass"
        },
        {
            "description": "The SSO Client Secret for Confidential Access",
            "displayName": "SSO Client Secret",
            "from": "[a-zA-Z0-9]{8}",
            "generate": "expression",
            "name": "SSO_SECRET",
            "required": true
        },
        {
            "description": "Enable CORS for SSO applications",
            "displayName": "Enable CORS for SSO?",
            "name": "SSO_ENABLE_CORS",
            "required": false,
            "value": "false"
        },
        {
            "description": "SSO logout page for SAML applications",
            "displayName": "SSO SAML Logout Page",
            "name": "SSO_SAML_LOGOUT_PAGE",
            "required": false,
            "value": "/"
        },
        {
            "description": "If true SSL communication between Wildfly and the SSO Server will be insecure (i.e. certificate validation is disabled with curl)",
            "displayName": "Disable SSL Validation in Wildfly->SSO communication",
            "name": "SSO_DISABLE_SSL_CERTIFICATE_VALIDATION",
            "required": false,
            "value": "true"
        },
        {
            "description": "The name of the truststore file within the secret (e.g. truststore.jks)",
            "displayName": "SSO Trust Store",
            "name": "SSO_TRUSTSTORE",
            "required": false,
            "value": ""
        },
        {
            "description": "The password for the truststore and certificate (e.g. mykeystorepass)",
            "displayName": "SSO Trust Store Password",
            "name": "SSO_TRUSTSTORE_PASSWORD",
            "required": false,
            "value": ""
        },
        {
            "description": "The name of the secret containing the truststore file (e.g. truststore-secret). Used for volume secretName",
            "displayName": "SSO Trust Store Secret",
            "name": "SSO_TRUSTSTORE_SECRET",
            "required": false,
            "value": "wildfly-app-secret"
        },
        {
            "description": "The value of the user name for the images from Quay to be used",
            "displayName": "Quay Images User ID",
            "name": "DOCKER_IMAGES_USER",
            "required": true,
            "value": "windupeng"
        },
        {
            "description": "The value of the tag for the images from Quay to be used",
            "displayName": "Quay Images Tag",
            "name": "DOCKER_IMAGES_TAG",
            "required": true,
            "value": "6.1.2.Final"
        },
        {
            "description": "The maximum value of the size the an HTTP post request",
            "displayName": "Undertow max post size",
            "name": "MAX_POST_SIZE",
            "required": true,
            "value": "4294967296"
        }
    ]
}