--- apiVersion: template.openshift.io/v1 kind: Template labels: template: redis-ephemeral-template message: |- The following service(s) have been created in your project: ${DATABASE_SERVICE_NAME}. Password: ${REDIS_PASSWORD} Connection URL: redis://${DATABASE_SERVICE_NAME}:6379/ For more information about using this template, including OpenShift considerations, see https://github.com/sclorg/redis-container/blob/master/5. metadata: annotations: description: |- Redis in-memory data structure store, without persistent storage. For more information about using this template, including OpenShift considerations, see https://github.com/sclorg/redis-container/blob/master/5. WARNING: Any data stored will be lost upon pod destruction. Only use this template for testing iconClass: icon-redis openshift.io/display-name: Redis (Ephemeral) openshift.io/documentation-url: https://github.com/sclorg/redis-container/tree/master/5 openshift.io/long-description: This template provides a standalone Redis server. The data is not stored on persistent storage, so any restart of the service will result in all data being lost. openshift.io/provider-display-name: Red Hat, Inc. openshift.io/support-url: https://access.redhat.com samples.operator.openshift.io/version: 4.18.25 tags: database,redis creationTimestamp: "2025-10-11T10:37:43Z" labels: samples.operator.openshift.io/managed: "true" managedFields: - apiVersion: template.openshift.io/v1 fieldsType: FieldsV1 fieldsV1: f:labels: .: {} f:template: {} f:message: {} f:metadata: f:annotations: .: {} f:description: {} f:iconClass: {} f:openshift.io/display-name: {} f:openshift.io/documentation-url: {} f:openshift.io/long-description: {} f:openshift.io/provider-display-name: {} f:openshift.io/support-url: {} f:samples.operator.openshift.io/version: {} f:tags: {} f:labels: .: {} f:samples.operator.openshift.io/managed: {} f:objects: {} f:parameters: {} manager: cluster-samples-operator operation: Update time: "2025-10-11T10:37:43Z" name: redis-ephemeral namespace: openshift resourceVersion: "17301" uid: 39bd3b26-f21f-46f7-87b6-4c4d82791c85 objects: - apiVersion: v1 kind: Secret metadata: annotations: template.openshift.io/expose-password: '{.data[''database-password'']}' name: ${DATABASE_SERVICE_NAME} stringData: database-password: ${REDIS_PASSWORD} - apiVersion: v1 kind: Service metadata: annotations: template.openshift.io/expose-uri: redis://{.spec.clusterIP}:{.spec.ports[?(.name=="redis")].port} name: ${DATABASE_SERVICE_NAME} spec: ports: - name: redis nodePort: 0 port: 6379 protocol: TCP targetPort: 6379 selector: name: ${DATABASE_SERVICE_NAME} sessionAffinity: None type: ClusterIP status: loadBalancer: {} - apiVersion: apps.openshift.io/v1 kind: DeploymentConfig metadata: annotations: template.alpha.openshift.io/wait-for-ready: "true" name: ${DATABASE_SERVICE_NAME} spec: replicas: 1 selector: name: ${DATABASE_SERVICE_NAME} strategy: type: Recreate template: metadata: labels: name: ${DATABASE_SERVICE_NAME} spec: containers: - capabilities: {} env: - name: REDIS_PASSWORD valueFrom: secretKeyRef: key: database-password name: ${DATABASE_SERVICE_NAME} image: ' ' imagePullPolicy: IfNotPresent livenessProbe: initialDelaySeconds: 30 tcpSocket: port: 6379 timeoutSeconds: 1 name: redis ports: - containerPort: 6379 protocol: TCP readinessProbe: exec: command: - /bin/sh - -i - -c - test "$(redis-cli -h 127.0.0.1 -a $REDIS_PASSWORD ping)" == "PONG" initialDelaySeconds: 5 timeoutSeconds: 1 resources: limits: memory: ${MEMORY_LIMIT} securityContext: capabilities: {} privileged: false terminationMessagePath: /dev/termination-log volumeMounts: - mountPath: /var/lib/redis/data name: ${DATABASE_SERVICE_NAME}-data dnsPolicy: ClusterFirst restartPolicy: Always volumes: - emptyDir: medium: "" name: ${DATABASE_SERVICE_NAME}-data triggers: - imageChangeParams: automatic: true containerNames: - redis from: kind: ImageStreamTag name: redis:${REDIS_VERSION} namespace: ${NAMESPACE} lastTriggeredImage: "" type: ImageChange - type: ConfigChange status: {} parameters: - description: Maximum amount of memory the container can use. displayName: Memory Limit name: MEMORY_LIMIT required: true value: 512Mi - description: The OpenShift Namespace where the ImageStream resides. displayName: Namespace name: NAMESPACE value: openshift - description: The name of the OpenShift Service exposed for the database. displayName: Database Service Name name: DATABASE_SERVICE_NAME required: true value: redis - description: Password for the Redis connection user. displayName: Redis Connection Password from: '[a-zA-Z0-9]{16}' generate: expression name: REDIS_PASSWORD required: true - description: Version of Redis image to be used (5-el7, 5-el8, 6-el7, 6-el8, or latest). displayName: Version of Redis Image name: REDIS_VERSION required: true value: 6-el8