{
  "apiVersion": "v1beta1",
  "items": [
    {
      "apiVersion": "v1beta1",
      "containerPort": 8080,
      "id": "frontend",
      "kind": "Service",
      "port": 5432,
      "selector": {
        "name": "frontend"
      }
    },
    {
      "apiVersion": "v1beta1",
      "host": "www.example.com",
      "id": "sample-app-secure",
      "kind": "Route",
      "metadata": {
        "name": "route-edge"
      },
      "serviceName": "frontend",
      "tls": {
        "caCertificate": "-----BEGIN CERTIFICATE-----\\nMIIEFzCCAv+gAwIBAgIJALK1iUpF2VQLMA0GCSqGSIb3DQEBBQUAMIGhMQswCQYD\\nVQQGEwJVUzELMAkGA1UECAwCU0MxFTATBgNVBAcMDERlZmF1bHQgQ2l0eTEcMBoG\\nA1UECgwTRGVmYXVsdCBDb21wYW55IEx0ZDEQMA4GA1UECwwHVGVzdCBDQTEaMBgG\\nA1UEAwwRd3d3LmV4YW1wbGVjYS5jb20xIjAgBgkqhkiG9w0BCQEWE2V4YW1wbGVA\\nZXhhbXBsZS5jb20wHhcNMTUwMTEyMTQxNTAxWhcNMjUwMTA5MTQxNTAxWjCBoTEL\\nMAkGA1UEBhMCVVMxCzAJBgNVBAgMAlNDMRUwEwYDVQQHDAxEZWZhdWx0IENpdHkx\\nHDAaBgNVBAoME0RlZmF1bHQgQ29tcGFueSBMdGQxEDAOBgNVBAsMB1Rlc3QgQ0Ex\\nGjAYBgNVBAMMEXd3dy5leGFtcGxlY2EuY29tMSIwIAYJKoZIhvcNAQkBFhNleGFt\\ncGxlQGV4YW1wbGUuY29tMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA\\nw2rK1J2NMtQj0KDug7g7HRKl5jbf0QMkMKyTU1fBtZ0cCzvsF4CqV11LK4BSVWaK\\nrzkaXe99IVJnH8KdOlDl5Dh/+cJ3xdkClSyeUT4zgb6CCBqg78ePp+nN11JKuJlV\\nIG1qdJpB1J5O/kCLsGcTf7RS74MtqMFo96446Zvt7YaBhWPz6gDaO/TUzfrNcGLA\\nEfHVXkvVWqb3gqXUztZyVex/gtP9FXQ7gxTvJml7UkmT0VAFjtZnCqmFxpLZFZ15\\n+qP9O7Q2MpsGUO/4vDAuYrKBeg1ZdPSi8gwqUP2qWsGd9MIWRv3thI2903BczDc7\\nr8WaIbm37vYZAS9G56E4+wIDAQABo1AwTjAdBgNVHQ4EFgQUugLrSJshOBk5TSsU\\nANs4+SmJUGwwHwYDVR0jBBgwFoAUugLrSJshOBk5TSsUANs4+SmJUGwwDAYDVR0T\\nBAUwAwEB/zANBgkqhkiG9w0BAQUFAAOCAQEAaMJ33zAMV4korHo5aPfayV3uHoYZ\\n1ChzP3eSsF+FjoscpoNSKs91ZXZF6LquzoNezbfiihK4PYqgwVD2+O0/Ty7UjN4S\\nqzFKVR4OS/6lCJ8YncxoFpTntbvjgojf1DEataKFUN196PAANc3yz8cWHF4uvjPv\\nWkgFqbIjb+7D1YgglNyovXkRDlRZl0LD1OQ0ZWhd4Ge1qx8mmmanoBeYZ9+DgpFC\\nj9tQAbS867yeOryNe7sEOIpXAAqK/DTu0hB6+ySsDfMo4piXCc2aA/eI2DCuw08e\\nw17Dz9WnupZjVdwTKzDhFgJZMLDqn37HQnT6EemLFqbcR0VPEnfyhDtZIQ==\\n-----END CERTIFICATE-----",
        "certificate": "-----BEGIN CERTIFICATE-----\\nMIIDIjCCAgqgAwIBAgIBATANBgkqhkiG9w0BAQUFADCBoTELMAkGA1UEBhMCVVMx\\nCzAJBgNVBAgMAlNDMRUwEwYDVQQHDAxEZWZhdWx0IENpdHkxHDAaBgNVBAoME0Rl\\nZmF1bHQgQ29tcGFueSBMdGQxEDAOBgNVBAsMB1Rlc3QgQ0ExGjAYBgNVBAMMEXd3\\ndy5leGFtcGxlY2EuY29tMSIwIAYJKoZIhvcNAQkBFhNleGFtcGxlQGV4YW1wbGUu\\nY29tMB4XDTE1MDExMjE0MTk0MVoXDTE2MDExMjE0MTk0MVowfDEYMBYGA1UEAwwP\\nd3d3LmV4YW1wbGUuY29tMQswCQYDVQQIDAJTQzELMAkGA1UEBhMCVVMxIjAgBgkq\\nhkiG9w0BCQEWE2V4YW1wbGVAZXhhbXBsZS5jb20xEDAOBgNVBAoMB0V4YW1wbGUx\\nEDAOBgNVBAsMB0V4YW1wbGUwgZ8wDQYJKoZIhvcNAQEBBQADgY0AMIGJAoGBAMrv\\ngu6ZTTefNN7jjiZbS/xvQjyXjYMN7oVXv76jbX8gjMOmg9m0xoVZZFAE4XyQDuCm\\n47VRx5Qrf/YLXmB2VtCFvB0AhXr5zSeWzPwaAPrjA4ebG+LUo24ziS8KqNxrFs1M\\nmNrQUgZyQC6XIe1JHXc9t+JlL5UZyZQC1IfaJulDAgMBAAGjDTALMAkGA1UdEwQC\\nMAAwDQYJKoZIhvcNAQEFBQADggEBAFCi7ZlkMnESvzlZCvv82Pq6S46AAOTPXdFd\\nTMvrh12E1sdVALF1P1oYFJzG1EiZ5ezOx88fEDTW+Lxb9anw5/KJzwtWcfsupf1m\\nV7J0D3qKzw5C1wjzYHh9/Pz7B1D0KthQRATQCfNf8s6bbFLaw/dmiIUhHLtIH5Qc\\nyfrejTZbOSP77z8NOWir+BWWgIDDB2//3AkDIQvT20vmkZRhkqSdT7et4NmXOX/j\\njhPti4b2Fie0LeuvgaOdKjCpQQNrYthZHXeVlOLRhMTSk3qUczenkKTOhvP7IS9q\\n+Dzv5hqgSfvMG392KWh5f8xXfJNs4W5KLbZyl901MeReiLrPH3w=\\n-----END CERTIFICATE-----",
        "key": "-----BEGIN PRIVATE KEY-----\\nMIICeAIBADANBgkqhkiG9w0BAQEFAASCAmIwggJeAgEAAoGBAMrvgu6ZTTefNN7j\\njiZbS/xvQjyXjYMN7oVXv76jbX8gjMOmg9m0xoVZZFAE4XyQDuCm47VRx5Qrf/YL\\nXmB2VtCFvB0AhXr5zSeWzPwaAPrjA4ebG+LUo24ziS8KqNxrFs1MmNrQUgZyQC6X\\nIe1JHXc9t+JlL5UZyZQC1IfaJulDAgMBAAECgYEAnxOjEj/vrLNLMZE1Q9H7PZVF\\nWdP/JQVNvQ7tCpZ3ZdjxHwkvf//aQnuxS5yX2Rnf37BS/TZu+TIkK4373CfHomSx\\nUTAn2FsLmOJljupgGcoeLx5K5nu7B7rY5L1NHvdpxZ4YjeISrRtEPvRakllENU5y\\ngJE8c2eQOx08ZSRE4TkCQQD7dws2/FldqwdjJucYijsJVuUdoTqxP8gWL6bB251q\\nelP2/a6W2elqOcWId28560jG9ZS3cuKvnmu/4LG88vZFAkEAzphrH3673oTsHN+d\\nuBd5uyrlnGjWjuiMKv2TPITZcWBjB8nJDSvLneHF59MYwejNNEof2tRjgFSdImFH\\nmi995wJBAMtPjW6wiqRz0i41VuT9ZgwACJBzOdvzQJfHgSD9qgFb1CU/J/hpSRIM\\nkYvrXK9MbvQFvG6x4VuyT1W8mpe1LK0CQAo8VPpffhFdRpF7psXLK/XQ/0VLkG3O\\nKburipLyBg/u9ZkaL0Ley5zL5dFBjTV2Qkx367Ic2b0u9AYTCcgi2DsCQQD3zZ7B\\nv7BOm7MkylKokY2MduFFXU0Bxg6pfZ7q3rvg8gqhUFbaMStPRYg6myiDiW/JfLhF\\nTcFT4touIo7oriFJ\\n-----END PRIVATE KEY-----",
        "termination": "edge"
      }
    },
    {
      "apiVersion": "v1beta1",
      "kind": "ImageRepository",
      "metadata": {
        "name": "origin-ruby-sample"
      }
    },
    {
      "apiVersion": "v1beta1",
      "kind": "ImageRepository",
      "metadata": {
        "name": "ruby-20-centos7"
      }
    },
    {
      "apiVersion": "v1beta1",
      "kind": "BuildConfig",
      "labels": {
        "name": "ruby-sample-build"
      },
      "metadata": {
        "name": "ruby-sample-build"
      },
      "parameters": {
        "output": {
          "to": {
            "name": "origin-ruby-sample"
          }
        },
        "source": {
          "git": {
            "uri": "git://github.com/openshift/ruby-hello-world.git"
          },
          "type": "Git"
        },
        "strategy": {
          "stiStrategy": {
            "image": "openshift/ruby-20-centos7"
          },
          "type": "STI"
        }
      },
      "triggers": [
        {
          "github": {
            "secret": "secret101"
          },
          "type": "github"
        },
        {
          "generic": {
            "secret": "secret101"
          },
          "type": "generic"
        },
        {
          "imageChange": {
            "from": {
              "name": "ruby-20-centos7"
            },
            "image": "openshift/ruby-20-centos7",
            "tag": "latest"
          },
          "type": "imageChange"
        }
      ]
    },
    {
      "apiVersion": "v1beta1",
      "kind": "DeploymentConfig",
      "metadata": {
        "name": "frontend"
      },
      "template": {
        "controllerTemplate": {
          "podTemplate": {
            "desiredState": {
              "manifest": {
                "containers": [
                  {
                    "env": [
                      {
                        "name": "ADMIN_USERNAME",
                        "value": "${ADMIN_USERNAME}"
                      },
                      {
                        "name": "ADMIN_PASSWORD",
                        "value": "${ADMIN_PASSWORD}"
                      },
                      {
                        "name": "MYSQL_ROOT_PASSWORD",
                        "value": "${MYSQL_ROOT_PASSWORD}"
                      },
                      {
                        "name": "MYSQL_DATABASE",
                        "value": "${MYSQL_DATABASE}"
                      }
                    ],
                    "image": "origin-ruby-sample",
                    "name": "ruby-helloworld",
                    "ports": [
                      {
                        "containerPort": 8080
                      }
                    ]
                  }
                ],
                "version": "v1beta1"
              }
            },
            "labels": {
              "name": "frontend"
            }
          },
          "replicaSelector": {
            "name": "frontend"
          },
          "replicas": 1
        },
        "strategy": {
          "type": "Recreate"
        }
      },
      "triggers": [
        {
          "imageChangeParams": {
            "automatic": true,
            "containerNames": [
              "ruby-helloworld"
            ],
            "from": {
              "name": "origin-ruby-sample"
            },
            "tag": "latest"
          },
          "type": "ImageChange"
        }
      ]
    },
    {
      "apiVersion": "v1beta1",
      "containerPort": 3306,
      "id": "database",
      "kind": "Service",
      "port": 5434,
      "selector": {
        "name": "database"
      }
    },
    {
      "apiVersion": "v1beta1",
      "kind": "DeploymentConfig",
      "metadata": {
        "name": "database"
      },
      "template": {
        "controllerTemplate": {
          "podTemplate": {
            "desiredState": {
              "manifest": {
                "containers": [
                  {
                    "env": [
                      {
                        "name": "MYSQL_ROOT_PASSWORD",
                        "value": "${MYSQL_ROOT_PASSWORD}"
                      },
                      {
                        "name": "MYSQL_DATABASE",
                        "value": "${MYSQL_DATABASE}"
                      }
                    ],
                    "image": "mysql",
                    "name": "ruby-helloworld-database",
                    "ports": [
                      {
                        "containerPort": 3306
                      }
                    ]
                  }
                ],
                "version": "v1beta1"
              }
            },
            "labels": {
              "name": "database"
            }
          },
          "replicaSelector": {
            "name": "database"
          },
          "replicas": 1
        },
        "strategy": {
          "type": "Recreate"
        }
      },
      "triggers": [
        {
          "type": "ConfigChange"
        }
      ]
    }
  ],
  "kind": "Template",
  "metadata": {
    "annotations": {
      "description": "This example shows how to create a simple ruby application in openshift origin v3"
    },
    "name": "ruby-helloworld-sample"
  },
  "parameters": [
    {
      "description": "administrator username",
      "from": "admin[A-Z0-9]{3}",
      "generate": "expression",
      "name": "ADMIN_USERNAME"
    },
    {
      "description": "administrator password",
      "from": "[a-zA-Z0-9]{8}",
      "generate": "expression",
      "name": "ADMIN_PASSWORD"
    },
    {
      "description": "database password",
      "from": "[a-zA-Z0-9]{8}",
      "generate": "expression",
      "name": "MYSQL_ROOT_PASSWORD"
    },
    {
      "description": "database name",
      "name": "MYSQL_DATABASE",
      "value": "root"
    }
  ]
}