openshift模板参数扩展

时间:2017-07-19 21:26:24

标签: openshift openshift-origin openshift-enterprise

我正在尝试为OpenShift 3.5编写模板。我遇到的问题是我的大多数参数通常都是相同的值,但因为它们通常不够相同(可能是20%的时间),我需要允许开发人员指定值每个参数。这里的问题是:有没有办法在OpenShift模板中进行某种参数扩展? Bash支持以下语法:${VAR1:-"SomeDefaultValue"}。这样,如果未设置VAR1,则它具有可以使用的默认值。我真正想做的是:${OPTIONAL_VARIABLE:-${REQUIRED_VARIABLE}}。这样,如果已设置OPTIONAL_VARIABLE,则会使用REQUIRED_VARIABLE。否则,它将使用EasyMock,开发人员必须填写该java.lang.IllegalStateException: 2 matchers expected, 3 recorded. This exception usually occurs when matchers are mixed with raw values when recording a method: foo(5, eq(6)); // wrong You need to use no matcher at all or a matcher for every single param: foo(eq(5), eq(6)); // right foo(5, 6); // also right 。那么,有没有办法在OpenShift模板中执行此类操作或类似操作?

1 个答案:

答案 0 :(得分:1)

在模板的参数中,指定默认的value字段:

"parameters": [
    {
        "name": "APPLICATION_NAME",
        "displayName": "Application instance name",
        "description": "The name of the Wagtail instance",
        "value": "wagtail",
        "from": "[a-zA-Z0-9]{10}",
        "required": true
    },

如果您需要将随机值生成为默认值,请添加generatefrom字段。使用expression获取generate的值,然后from字段的值声明生成的值的格式。

    {
        "name": "DJANGO_ADMIN_PASSWORD",
        "displayName": "Application admin user password",
        "description": "Initial password for Wagtail admin user",
        "generate": "expression",
        "from": "[a-zA-Z0-9]{16}",
        "required": true
    },

请参阅以下文档。