小编Joi*_*ort的帖子

如何参数化大厅任务文件

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}} 就不会被替换。

我该如何实现这一目标?

concourse

3
推荐指数
1
解决办法
3173
查看次数

ElasticSearch 对聚合进行过滤,而不影响聚合计数

我们使用 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)

filter aggregation elasticsearch

2
推荐指数
1
解决办法
2399
查看次数

标签 统计

aggregation ×1

concourse ×1

elasticsearch ×1

filter ×1