Merge pull request #317152 from jpds/quickwit-0.8.1

quickwit: 0.8.0 → 0.8.1, init module

authored by Yt and committed by GitHub 6c50c9f8 168a0036

+423 -34
+2
nixos/doc/manual/release-notes/rl-2411.section.md
··· 12 12 for LLMs. Available as [services.open-webui](#opt-services.open-webui.enable) 13 13 service. 14 14 15 + - [Quickwit](https://quickwit.io), sub-second search & analytics engine on cloud storage. Available as [services.quickwit](options.html#opt-services.quickwit). 16 + 15 17 ## Backward Incompatibilities {#sec-release-24.11-incompatibilities} 16 18 17 19 - `nginx` package no longer includes `gd` and `geoip` dependencies. For enabling it, override `nginx` package with the optionals `withImageFilter` and `withGeoIP`.
+1
nixos/modules/module-list.nix
··· 1248 1248 ./services/search/meilisearch.nix 1249 1249 ./services/search/opensearch.nix 1250 1250 ./services/search/qdrant.nix 1251 + ./services/search/quickwit.nix 1251 1252 ./services/search/sonic-server.nix 1252 1253 ./services/search/typesense.nix 1253 1254 ./services/security/aesmd.nix
+190
nixos/modules/services/search/quickwit.nix
··· 1 + { config, lib, pkgs, ... }: 2 + 3 + with lib; 4 + 5 + let 6 + cfg = config.services.quickwit; 7 + 8 + settingsFormat = pkgs.formats.yaml {}; 9 + quickwitYml = settingsFormat.generate "quickwit.yml" cfg.settings; 10 + 11 + usingDefaultDataDir = cfg.dataDir == "/var/lib/quickwit"; 12 + usingDefaultUserAndGroup = cfg.user == "quickwit" && cfg.group == "quickwit"; 13 + in 14 + { 15 + 16 + options.services.quickwit = { 17 + enable = mkEnableOption "Quickwit"; 18 + 19 + package = lib.mkPackageOption pkgs "Quickwit" { 20 + default = [ "quickwit" ]; 21 + }; 22 + 23 + settings = lib.mkOption { 24 + type = lib.types.submodule { 25 + freeformType = settingsFormat.type; 26 + 27 + options."rest" = lib.mkOption { 28 + default = {}; 29 + description = '' 30 + Rest server configuration for Quickwit 31 + ''; 32 + 33 + type = lib.types.submodule { 34 + freeformType = settingsFormat.type; 35 + 36 + options."listen_port" = lib.mkOption { 37 + type = lib.types.port; 38 + default = 7280; 39 + description = '' 40 + The port to listen on for HTTP REST traffic. 41 + ''; 42 + }; 43 + }; 44 + }; 45 + 46 + options."grpc_listen_port" = lib.mkOption { 47 + type = lib.types.port; 48 + default = 7281; 49 + description = '' 50 + The port to listen on for gRPC traffic. 51 + ''; 52 + }; 53 + 54 + options."listen_address" = lib.mkOption { 55 + type = lib.types.str; 56 + default = "127.0.0.1"; 57 + description = '' 58 + Listen address of Quickwit. 59 + ''; 60 + }; 61 + 62 + options."version" = lib.mkOption { 63 + type = lib.types.float; 64 + default = 0.7; 65 + description = '' 66 + Configuration file version. 67 + ''; 68 + }; 69 + }; 70 + 71 + default = {}; 72 + 73 + description = '' 74 + Quickwit configuration. 75 + ''; 76 + }; 77 + 78 + dataDir = lib.mkOption { 79 + type = lib.types.path; 80 + default = "/var/lib/quickwit"; 81 + apply = converge (removeSuffix "/"); 82 + description = '' 83 + Data directory for Quickwit. If you change this, you need to 84 + manually create the directory. You also need to create the 85 + `quickwit` user and group, or change 86 + [](#opt-services.quickwit.user) and 87 + [](#opt-services.quickwit.group) to existing ones with 88 + access to the directory. 89 + ''; 90 + }; 91 + 92 + user = lib.mkOption { 93 + type = lib.types.str; 94 + default = "quickwit"; 95 + description = '' 96 + The user Quickwit runs as. Should be left at default unless 97 + you have very specific needs. 98 + ''; 99 + }; 100 + 101 + group = lib.mkOption { 102 + type = lib.types.str; 103 + default = "quickwit"; 104 + description = '' 105 + The group quickwit runs as. Should be left at default unless 106 + you have very specific needs. 107 + ''; 108 + }; 109 + 110 + extraFlags = lib.mkOption { 111 + description = "Extra command line options to pass to Quickwit."; 112 + default = [ ]; 113 + type = lib.types.listOf lib.types.str; 114 + }; 115 + 116 + restartIfChanged = lib.mkOption { 117 + type = lib.types.bool; 118 + description = '' 119 + Automatically restart the service on config change. 120 + This can be set to false to defer restarts on a server or cluster. 121 + Please consider the security implications of inadvertently running an older version, 122 + and the possibility of unexpected behavior caused by inconsistent versions across a cluster when disabling this option. 123 + ''; 124 + default = true; 125 + }; 126 + }; 127 + 128 + config = mkIf cfg.enable { 129 + systemd.services.quickwit = { 130 + description = "Quickwit"; 131 + wantedBy = [ "multi-user.target" ]; 132 + after = [ "network.target" ]; 133 + inherit (cfg) restartIfChanged; 134 + environment = { 135 + QW_DATA_DIR = cfg.dataDir; 136 + }; 137 + serviceConfig = { 138 + ExecStart = '' 139 + ${cfg.package}/bin/quickwit run --config ${quickwitYml} \ 140 + ${escapeShellArgs cfg.extraFlags} 141 + ''; 142 + User = cfg.user; 143 + Group = cfg.group; 144 + Restart = "on-failure"; 145 + DynamicUser = usingDefaultUserAndGroup && usingDefaultDataDir; 146 + CapabilityBoundingSet = [ "" ]; 147 + DevicePolicy = "closed"; 148 + LockPersonality = true; 149 + MemoryDenyWriteExecute = true; 150 + NoNewPrivileges = true; 151 + PrivateDevices = true; 152 + ProcSubset = "pid"; 153 + ProtectClock = true; 154 + ProtectHome = true; 155 + ProtectHostname = true; 156 + ProtectControlGroups = true; 157 + ProtectKernelLogs = true; 158 + ProtectKernelModules = true; 159 + ProtectKernelTunables = true; 160 + ProtectProc = "invisible"; 161 + ProtectSystem = "strict"; 162 + ReadWritePaths = [ 163 + "/var/lib/quickwit" 164 + ]; 165 + RestrictAddressFamilies = [ 166 + "AF_NETLINK" 167 + "AF_INET" 168 + "AF_INET6" 169 + ]; 170 + RestrictNamespaces = true; 171 + RestrictRealtime = true; 172 + RestrictSUIDSGID = true; 173 + SystemCallArchitectures = "native"; 174 + SystemCallFilter = [ 175 + # 1. allow a reasonable set of syscalls 176 + "@system-service @resources" 177 + # 2. and deny unreasonable ones 178 + "~@privileged" 179 + # 3. then allow the required subset within denied groups 180 + "@chown" 181 + ]; 182 + } // (optionalAttrs (usingDefaultDataDir) { 183 + StateDirectory = "quickwit"; 184 + StateDirectoryMode = "0700"; 185 + }); 186 + }; 187 + 188 + environment.systemPackages = [ cfg.package ]; 189 + }; 190 + }
+1
nixos/tests/all-tests.nix
··· 788 788 qtile = handleTestOn ["x86_64-linux" "aarch64-linux"] ./qtile.nix {}; 789 789 quake3 = handleTest ./quake3.nix {}; 790 790 quicktun = handleTest ./quicktun.nix {}; 791 + quickwit = handleTest ./quickwit.nix {}; 791 792 quorum = handleTest ./quorum.nix {}; 792 793 rabbitmq = handleTest ./rabbitmq.nix {}; 793 794 radarr = handleTest ./radarr.nix {};
+31
nixos/tests/quickwit.nix
··· 1 + import ./make-test-python.nix ({ lib, pkgs, ... }: 2 + 3 + { 4 + name = "quickwit"; 5 + meta.maintainers = [ pkgs.lib.maintainers.happysalada ]; 6 + 7 + nodes = { 8 + quickwit = { config, pkgs, ... }: { 9 + services.quickwit.enable = true; 10 + }; 11 + }; 12 + 13 + testScript = 14 + '' 15 + quickwit.wait_for_unit("quickwit") 16 + quickwit.wait_for_open_port(7280) 17 + quickwit.wait_for_open_port(7281) 18 + 19 + quickwit.wait_until_succeeds( 20 + "journalctl -o cat -u quickwit.service | grep 'version: ${pkgs.quickwit.version}'" 21 + ) 22 + 23 + quickwit.wait_until_succeeds( 24 + "journalctl -o cat -u quickwit.service | grep 'transitioned to ready state'" 25 + ) 26 + 27 + quickwit.log(quickwit.succeed( 28 + "systemd-analyze security quickwit.service | grep -v '✓'" 29 + )) 30 + ''; 31 + })
+1
nixos/tests/vector/default.nix
··· 8 8 api = import ./api.nix { inherit system pkgs; }; 9 9 dnstap = import ./dnstap.nix { inherit system pkgs; }; 10 10 nginx-clickhouse = import ./nginx-clickhouse.nix { inherit system pkgs; }; 11 + syslog-quickwit = import ./syslog-quickwit.nix { inherit system pkgs; }; 11 12 }
+155
nixos/tests/vector/syslog-quickwit.nix
··· 1 + import ../make-test-python.nix ({ lib, pkgs, ... }: 2 + 3 + # Based on https://quickwit.io/docs/log-management/send-logs/using-vector 4 + 5 + { 6 + name = "vector-syslog-quickwit"; 7 + meta.maintainers = [ pkgs.lib.maintainers.happysalada ]; 8 + 9 + nodes = { 10 + quickwit = { config, pkgs, ... }: { 11 + environment.systemPackages = [ pkgs.jq ]; 12 + 13 + networking.firewall.allowedTCPPorts = [ 7280 ]; 14 + 15 + services.quickwit = { 16 + enable = true; 17 + settings = { 18 + listen_address = "::"; 19 + }; 20 + }; 21 + }; 22 + 23 + syslog = { config, pkgs, ... }: { 24 + services.vector = { 25 + enable = true; 26 + 27 + settings = { 28 + sources = { 29 + generate_syslog = { 30 + type = "demo_logs"; 31 + format = "syslog"; 32 + interval = 0.5; 33 + }; 34 + }; 35 + 36 + transforms = { 37 + remap_syslog = { 38 + inputs = ["generate_syslog"]; 39 + type = "remap"; 40 + source = '' 41 + structured = parse_syslog!(.message) 42 + .timestamp_nanos = to_unix_timestamp!(structured.timestamp, unit: "nanoseconds") 43 + .body = structured 44 + .service_name = structured.appname 45 + .resource_attributes.source_type = .source_type 46 + .resource_attributes.host.hostname = structured.hostname 47 + .resource_attributes.service.name = structured.appname 48 + .attributes.syslog.procid = structured.procid 49 + .attributes.syslog.facility = structured.facility 50 + .attributes.syslog.version = structured.version 51 + .severity_text = if includes(["emerg", "err", "crit", "alert"], structured.severity) { 52 + "ERROR" 53 + } else if structured.severity == "warning" { 54 + "WARN" 55 + } else if structured.severity == "debug" { 56 + "DEBUG" 57 + } else if includes(["info", "notice"], structured.severity) { 58 + "INFO" 59 + } else { 60 + structured.severity 61 + } 62 + .scope_name = structured.msgid 63 + del(.message) 64 + del(.timestamp) 65 + del(.service) 66 + del(.source_type) 67 + ''; 68 + }; 69 + }; 70 + 71 + sinks = { 72 + #emit_syslog = { 73 + # inputs = ["remap_syslog"]; 74 + # type = "console"; 75 + # encoding.codec = "json"; 76 + #}; 77 + quickwit_logs = { 78 + type = "http"; 79 + method = "post"; 80 + inputs = [ "remap_syslog" ]; 81 + encoding.codec = "json"; 82 + framing.method = "newline_delimited"; 83 + uri = "http://quickwit:7280/api/v1/otel-logs-v0_7/ingest"; 84 + }; 85 + }; 86 + }; 87 + }; 88 + }; 89 + }; 90 + 91 + testScript = 92 + let 93 + aggregationQuery = pkgs.writeText "aggregation-query.json" '' 94 + { 95 + "query": "*", 96 + "max_hits": 0, 97 + "aggs": { 98 + "count_per_minute": { 99 + "histogram": { 100 + "field": "timestamp_nanos", 101 + "interval": 60000000 102 + }, 103 + "aggs": { 104 + "severity_text_count": { 105 + "terms": { 106 + "field": "severity_text" 107 + } 108 + } 109 + } 110 + } 111 + } 112 + } 113 + ''; 114 + in 115 + '' 116 + quickwit.wait_for_unit("quickwit") 117 + quickwit.wait_for_open_port(7280) 118 + quickwit.wait_for_open_port(7281) 119 + 120 + quickwit.wait_until_succeeds( 121 + "journalctl -o cat -u quickwit.service | grep 'transitioned to ready state'" 122 + ) 123 + 124 + syslog.wait_for_unit("vector") 125 + syslog.wait_until_succeeds( 126 + "journalctl -o cat -u vector.service | grep 'Vector has started'" 127 + ) 128 + 129 + quickwit.wait_until_succeeds( 130 + "journalctl -o cat -u quickwit.service | grep 'publish-new-splits'" 131 + ) 132 + 133 + # Wait for logs to be generated 134 + # Test below aggregates by the minute 135 + syslog.sleep(60 * 2) 136 + 137 + quickwit.wait_until_succeeds( 138 + "curl -sSf -XGET http://127.0.0.1:7280/api/v1/otel-logs-v0_7/search?query=severity_text:ERROR |" 139 + + " jq '.num_hits' | grep -v '0'" 140 + ) 141 + 142 + quickwit.wait_until_succeeds( 143 + "journalctl -o cat -u quickwit.service | grep 'SearchRequest'" 144 + ) 145 + 146 + quickwit.wait_until_succeeds( 147 + "curl -sSf -XPOST -H 'Content-Type: application/json' http://127.0.0.1:7280/api/v1/otel-logs-v0_7/search --data @${aggregationQuery} |" 148 + + " jq '.num_hits' | grep -v '0'" 149 + ) 150 + 151 + quickwit.wait_until_succeeds( 152 + "journalctl -o cat -u quickwit.service | grep 'count_per_minute'" 153 + ) 154 + ''; 155 + })
+30 -30
pkgs/servers/search/quickwit/Cargo.lock
··· 1240 1240 [[package]] 1241 1241 name = "chitchat" 1242 1242 version = "0.8.0" 1243 - source = "git+https://github.com/quickwit-oss/chitchat.git?rev=f783620#f78362008b4b5522181c77e830f585c9d9e8b799" 1243 + source = "git+https://github.com/quickwit-oss/chitchat.git?rev=d039699#d03969982e1c199aa05cb8e4f86d8d83118057ff" 1244 1244 dependencies = [ 1245 1245 "anyhow", 1246 1246 "async-trait", ··· 5441 5441 5442 5442 [[package]] 5443 5443 name = "quickwit-actors" 5444 - version = "0.8.0" 5444 + version = "0.8.1" 5445 5445 dependencies = [ 5446 5446 "anyhow", 5447 5447 "async-trait", ··· 5461 5461 5462 5462 [[package]] 5463 5463 name = "quickwit-aws" 5464 - version = "0.8.0" 5464 + version = "0.8.1" 5465 5465 dependencies = [ 5466 5466 "async-trait", 5467 5467 "aws-config", ··· 5483 5483 5484 5484 [[package]] 5485 5485 name = "quickwit-cli" 5486 - version = "0.8.0" 5486 + version = "0.8.1" 5487 5487 dependencies = [ 5488 5488 "anyhow", 5489 5489 "async-trait", ··· 5541 5541 5542 5542 [[package]] 5543 5543 name = "quickwit-cluster" 5544 - version = "0.8.0" 5544 + version = "0.8.1" 5545 5545 dependencies = [ 5546 5546 "anyhow", 5547 5547 "async-trait", ··· 5570 5570 5571 5571 [[package]] 5572 5572 name = "quickwit-codegen" 5573 - version = "0.8.0" 5573 + version = "0.8.1" 5574 5574 dependencies = [ 5575 5575 "anyhow", 5576 5576 "futures", ··· 5587 5587 5588 5588 [[package]] 5589 5589 name = "quickwit-codegen-example" 5590 - version = "0.8.0" 5590 + version = "0.8.1" 5591 5591 dependencies = [ 5592 5592 "anyhow", 5593 5593 "async-trait", ··· 5614 5614 5615 5615 [[package]] 5616 5616 name = "quickwit-common" 5617 - version = "0.8.0" 5617 + version = "0.8.1" 5618 5618 dependencies = [ 5619 5619 "anyhow", 5620 5620 "async-speed-limit", ··· 5652 5652 5653 5653 [[package]] 5654 5654 name = "quickwit-config" 5655 - version = "0.8.0" 5655 + version = "0.8.1" 5656 5656 dependencies = [ 5657 5657 "anyhow", 5658 5658 "bytes", ··· 5686 5686 5687 5687 [[package]] 5688 5688 name = "quickwit-control-plane" 5689 - version = "0.8.0" 5689 + version = "0.8.1" 5690 5690 dependencies = [ 5691 5691 "anyhow", 5692 5692 "async-trait", ··· 5724 5724 5725 5725 [[package]] 5726 5726 name = "quickwit-datetime" 5727 - version = "0.8.0" 5727 + version = "0.8.1" 5728 5728 dependencies = [ 5729 5729 "anyhow", 5730 5730 "itertools 0.12.1", ··· 5738 5738 5739 5739 [[package]] 5740 5740 name = "quickwit-directories" 5741 - version = "0.8.0" 5741 + version = "0.8.1" 5742 5742 dependencies = [ 5743 5743 "anyhow", 5744 5744 "async-trait", ··· 5759 5759 5760 5760 [[package]] 5761 5761 name = "quickwit-doc-mapper" 5762 - version = "0.8.0" 5762 + version = "0.8.1" 5763 5763 dependencies = [ 5764 5764 "anyhow", 5765 5765 "base64 0.21.7", ··· 5794 5794 5795 5795 [[package]] 5796 5796 name = "quickwit-index-management" 5797 - version = "0.8.0" 5797 + version = "0.8.1" 5798 5798 dependencies = [ 5799 5799 "anyhow", 5800 5800 "async-trait", ··· 5826 5826 5827 5827 [[package]] 5828 5828 name = "quickwit-indexing" 5829 - version = "0.8.0" 5829 + version = "0.8.1" 5830 5830 dependencies = [ 5831 5831 "anyhow", 5832 5832 "arc-swap", ··· 5891 5891 5892 5892 [[package]] 5893 5893 name = "quickwit-ingest" 5894 - version = "0.8.0" 5894 + version = "0.8.1" 5895 5895 dependencies = [ 5896 5896 "anyhow", 5897 5897 "async-trait", ··· 5931 5931 5932 5932 [[package]] 5933 5933 name = "quickwit-integration-tests" 5934 - version = "0.8.0" 5934 + version = "0.8.1" 5935 5935 dependencies = [ 5936 5936 "anyhow", 5937 5937 "bytes", ··· 5964 5964 5965 5965 [[package]] 5966 5966 name = "quickwit-jaeger" 5967 - version = "0.8.0" 5967 + version = "0.8.1" 5968 5968 dependencies = [ 5969 5969 "anyhow", 5970 5970 "async-trait", ··· 5998 5998 5999 5999 [[package]] 6000 6000 name = "quickwit-janitor" 6001 - version = "0.8.0" 6001 + version = "0.8.1" 6002 6002 dependencies = [ 6003 6003 "anyhow", 6004 6004 "async-trait", ··· 6035 6035 6036 6036 [[package]] 6037 6037 name = "quickwit-lambda" 6038 - version = "0.8.0" 6038 + version = "0.8.1" 6039 6039 dependencies = [ 6040 6040 "anyhow", 6041 6041 "aws_lambda_events", ··· 6075 6075 6076 6076 [[package]] 6077 6077 name = "quickwit-macros" 6078 - version = "0.8.0" 6078 + version = "0.8.1" 6079 6079 dependencies = [ 6080 6080 "proc-macro2", 6081 6081 "quote", ··· 6084 6084 6085 6085 [[package]] 6086 6086 name = "quickwit-metastore" 6087 - version = "0.8.0" 6087 + version = "0.8.1" 6088 6088 dependencies = [ 6089 6089 "anyhow", 6090 6090 "async-trait", ··· 6127 6127 6128 6128 [[package]] 6129 6129 name = "quickwit-opentelemetry" 6130 - version = "0.8.0" 6130 + version = "0.8.1" 6131 6131 dependencies = [ 6132 6132 "anyhow", 6133 6133 "async-trait", ··· 6151 6151 6152 6152 [[package]] 6153 6153 name = "quickwit-proto" 6154 - version = "0.8.0" 6154 + version = "0.8.1" 6155 6155 dependencies = [ 6156 6156 "anyhow", 6157 6157 "async-trait", ··· 6188 6188 6189 6189 [[package]] 6190 6190 name = "quickwit-query" 6191 - version = "0.8.0" 6191 + version = "0.8.1" 6192 6192 dependencies = [ 6193 6193 "anyhow", 6194 6194 "base64 0.21.7", ··· 6214 6214 6215 6215 [[package]] 6216 6216 name = "quickwit-rest-client" 6217 - version = "0.8.0" 6217 + version = "0.8.1" 6218 6218 dependencies = [ 6219 6219 "anyhow", 6220 6220 "bytes", ··· 6238 6238 6239 6239 [[package]] 6240 6240 name = "quickwit-search" 6241 - version = "0.8.0" 6241 + version = "0.8.1" 6242 6242 dependencies = [ 6243 6243 "anyhow", 6244 6244 "assert-json-diff 2.0.2", ··· 6290 6290 6291 6291 [[package]] 6292 6292 name = "quickwit-serve" 6293 - version = "0.8.0" 6293 + version = "0.8.1" 6294 6294 dependencies = [ 6295 6295 "anyhow", 6296 6296 "assert-json-diff 2.0.2", ··· 6359 6359 6360 6360 [[package]] 6361 6361 name = "quickwit-storage" 6362 - version = "0.8.0" 6362 + version = "0.8.1" 6363 6363 dependencies = [ 6364 6364 "anyhow", 6365 6365 "async-trait", ··· 6407 6407 6408 6408 [[package]] 6409 6409 name = "quickwit-telemetry" 6410 - version = "0.8.0" 6410 + version = "0.8.1" 6411 6411 dependencies = [ 6412 6412 "async-trait", 6413 6413 "encoding_rs",
+12 -4
pkgs/servers/search/quickwit/default.nix
··· 2 2 , lib 3 3 , fetchFromGitHub 4 4 , rustPlatform 5 + , nixosTests 5 6 , nix-update-script 6 7 , protobuf 7 8 , rust-jemalloc-sys ··· 10 11 11 12 let 12 13 pname = "quickwit"; 13 - version = "0.8.0"; 14 + version = "0.8.1"; 14 15 in 15 16 rustPlatform.buildRustPackage rec { 16 17 inherit pname version; ··· 19 20 owner = "quickwit-oss"; 20 21 repo = pname; 21 22 rev = "v${version}"; 22 - hash = "sha256-FZVGQfDuQYIdRnCsBZvXeLbJBdcLugZeHNm+kf6L9SY="; 23 + hash = "sha256-B5U9nzXh6kj3/UnQzM3//h4hn9ippWHbeDMcMTP9XfM="; 23 24 }; 24 25 25 26 postPatch = '' ··· 40 41 cargoLock = { 41 42 lockFile = ./Cargo.lock; 42 43 outputHashes = { 43 - "chitchat-0.8.0" = "sha256-cjwKaBXoztYUXgnJvtFH+OSQU6tl2U3zKFWX324+9wo="; 44 + "chitchat-0.8.0" = "sha256-6K2noPoFaDnOxQIEV1WbmVPfRGwlI/WS1OWSBH2qb1Q="; 44 45 "mrecordlog-0.4.0" = "sha256-9LIVs+BqK9FLSfHL3vm9LL+/FXIXJ6v617QLv4luQik="; 45 46 "ownedbytes-0.6.0" = "sha256-in18/NYYIgUiZ9sm8NgJlebWidRp34DR7AhOD1Nh0aw="; 46 47 "pulsar-5.0.2" = "sha256-j7wpsAro6x4fk3pvSL4fxLkddJFq8duZ7jDj0Edf3YQ="; ··· 53 54 PROTOC = "${protobuf}/bin/protoc"; 54 55 PROTOC_INCLUDE = "${protobuf}/include"; 55 56 56 - passthru.updateScript = nix-update-script { }; 57 + passthru = { 58 + tests = { 59 + inherit (nixosTests) quickwit; 60 + inherit (nixosTests.vector) syslog-quickwit; 61 + }; 62 + updateScript = nix-update-script { }; 63 + }; 57 64 58 65 checkFlags = [ 59 66 # tries to make a network access ··· 72 79 "--skip=object_storage::s3_compatible_storage::tests::test_s3_compatible_storage_relative_path" 73 80 # flaky test 74 81 "--skip=actors::indexer::tests::test_indexer_triggers_commit_on_drained_mailbox" 82 + "--skip=actors::indexer::tests::test_indexer_triggers_commit_on_timeout" 75 83 "--skip=actors::indexer::tests::test_indexer_partitioning" 76 84 "--skip=actors::indexing_pipeline::tests::test_merge_pipeline_does_not_stop_on_indexing_pipeline_failure" 77 85 "--skip=actors::indexer::tests::test_indexer_triggers_commit_on_target_num_docs"