Concourse 的强大功能和简单性给我留下了深刻的印象。由于我的管道不断增长,我决定将任务转移到单独的文件中。其中一项任务使用我们自己的私有注册表中的自定义 Docker 映像。所以,在该任务文件中我有:
image_resource:
type: docker-image
source:
repository: docker.mycomp.com:443/app-builder
tag: latest
username: {{dckr-user}}
password: {{dckr-pass}}
Run Code Online (Sandbox Code Playgroud)
当我执行 set-pipeline 时,我传递 --load-from-vars 参数以从单独的文件加载凭据等。
现在这是我的问题:我注意到管道文件中的变量被替换为实际的正确值,但是一旦任务运行,前面提到的 {{dckr-user}} 和 {{dckr-pass}} 就不会被替换。
我该如何实现这一目标?
我们使用 ElasticSearch 根据 5 个字段查找报价,例如一些“自由文本”、报价状态和客户名称。我们还需要聚合客户名称和报价状态这两个字段。因此,当有人输入一些自由文本时,我们发现 10 个文档的状态为关闭,8 个文档的状态为打开,“状态过滤器”应包含 close(10) 和 open(8)。
现在的问题是,当我选择状态“关闭”包含在过滤器中时,打开的聚合结果更改为0。我希望它保持为8。那么如何防止聚合上的过滤器影响聚合本身?
这是第一个查询,搜索“java”:
{
"query": {
"bool": {
"filter": [
],
"must": {
"simple_query_string": {
"query" : "java"
}
}
}
},
"aggs": {
"OFFER_STATE_F": {
"terms": {
"size": 0,
"field": "offer_state_f",
"min_doc_count": 0
}
}
},
"from": 0,
"size": 1,
"fields": ["offer_id_ft", "offer_state_f"]
}
Run Code Online (Sandbox Code Playgroud)
结果是这样的:
{
"hits": {
"total": 960,
"max_score": 0.89408284000000005,
"hits": [
{
"_type": "offer",
"_index": "select",
"_id": "40542",
"fields": {
"offer_id_ft": [
"40542"
],
"offer_state_f": [ …Run Code Online (Sandbox Code Playgroud)