我试着做一些很简单的事情。我有一个弹性环境,有一个nginx负载平衡器。在这个平衡器上,我想用下面的清单来安装“让我们加密”副词:
type: update
name: load balancer
targetNodes:
nodeGroup:
- bl
settings:
fields:
- name: externalDomains
caption: External domain names (;-separated list)
type: string
vtype: domainlist
required: true
onInstall:
- installAddon:
id: letsencrypt
addons:
- id: letsencrypt
name: letsencrypt
onInstall:
- install [bl]:
envName: ${env.envName}
jps: https://github.com/jelastic-jps/lets-encrypt/blob/master/manifest.jps
settings:
customDomains: ${settings.externalDomains}当我运行清单时,我需要提供一个外部域:

然后,安装成功,在表面上。然后单击加载项的“配置”按钮:

不幸的是,“外部域”字段是空的:

这很不幸,因为我把它设置为${settings.externalDomains}。
但是,如果我安装了以下清单,那么一切都很好:
type: update
name: load balancer
targetNodes:
nodeGroup:
- bl
onInstall:
- installAddon:
id: letsencrypt
addons:
- id: letsencrypt
name: letsencrypt
onInstall:
- install [bl]:
envName: ${env.envName}
jps: https://github.com/jelastic-jps/lets-encrypt/blob/master/manifest.jps
settings:
customDomains: ${env.envName}.my-provider.com只要我在加载项的customDomains字段中手动编写任何内容,就可以了。一旦我从settings中输入了一个值,这个值就会被丢弃。我做错了什么?
发布于 2022-03-29 12:58:48
传递给customDomains的参数应首先在加载项中传递:
onInstall:
- installAddon:
id: letsencrypt
settings:
externalDomains: ${settings.externalDomains}然后它可以在附加体中使用。
完整的附加清单:
type: update
name: load balancer
targetNodes:
nodeGroup:
- bl
settings:
fields:
- name: externalDomains
caption: External domain names (;-separated list)
type: string
vtype: domainlist
required: true
onInstall:
- installAddon:
id: letsencrypt
settings:
externalDomains: ${settings.externalDomains}
addons:
- id: letsencrypt
name: letsencrypt
onInstall:
- install:
envName: ${env.envName}
nodeGroup: bl
jps: https://github.com/jelastic-jps/lets-encrypt/blob/master/manifest.jps
settings:
customDomains: ${settings.externalDomains}JPS行为可以在console选项卡中检查:-
{DOMAIN_URL}/console
测试清单控制台记录:
[07:33:10 letsencrypt]: BEGIN INSTALLATION: letsencrypt
[07:33:11 letsencrypt]: BEGIN HANDLE EVENT: {"topic":"application/install","envAppid":"c5b959b2a936d56a23daa6964b15dc19"}
[07:33:11 letsencrypt:1]: install [bl]: {"envName":"env-sup","nodeGroup":"bl","settings":{"customDomains":"domain8.com"}}
[07:33:11]: BEGIN MIXINS INITIALIZATION: Let's Encrypt Free SSL
[07:33:11]: loading mixin [configs/vers.yaml].response: {"result":0}
[07:33:11]: END MIXINS INITIALIZATION: Let's Encrypt Free SSL
[07:33:12 Let's.SSL]: BEGIN INSTALLATION: Let's Encrypt Free SSL
[07:33:12 Let's.SSL]: BEGIN HANDLE EVENT: {"topic":"application/install","envAppid":"c5b959b2a936d56a23daa6964b15dc19"}
[07:33:12 Let's.SSL:1]: setGlobals [bl]: {"nodeId":"","nodeGroup":"bl","withExtIp":"true","webroot":"","webrootPath":"","fallbackToX1":"","deployHook":"","deployHookType":"","undeployHook":"","undeployHookType":"","test":""}因此,在这里,您可以看到参数是否被传递并显示成功。
https://stackoverflow.com/questions/71107570
复制相似问题